llvm-6502/lib
Chris Lattner bd0781ed12 Teach the dag mechanism that this:
long long test2(unsigned A, unsigned B) {
        return ((unsigned long long)A << 32) + B;
}

is equivalent to this:

long long test1(unsigned A, unsigned B) {
        return ((unsigned long long)A << 32) | B;
}

Now they are both codegen'd to this on ppc:

_test2:
        blr

or this on x86:

test2:
        movl 4(%esp), %edx
        movl 8(%esp), %eax
        ret


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21231 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-11 20:29:59 +00:00
..
Analysis Don't make this require loopsimplify. It works BETTER with loop simplify 2005-04-06 21:45:00 +00:00
Archive Implement an isBytecodeArchive method to determine if an archive contains 2005-02-26 22:00:32 +00:00
AsmParser don't crash in some bad cases. 2005-03-23 01:29:26 +00:00
Bytecode This mega patch converts us from using Function::a{iterator|begin|end} to 2005-03-15 04:54:21 +00:00
CodeGen Teach the dag mechanism that this: 2005-04-11 20:29:59 +00:00
Debugger Correct the comments and file header. 2004-12-23 21:16:46 +00:00
ExecutionEngine Fix the missing symbols problem Bill was hitting. Patch contributed by 2005-03-17 15:38:16 +00:00
Linker fix some 80 column violations 2005-03-15 23:03:34 +00:00
Support Timers SHOULD NOT record the time taken to count the bytes allocated in the heap! 2005-03-22 03:20:38 +00:00
System Eliminate tabs 2005-04-11 03:44:22 +00:00
Target IA64 supports this operation. 2005-04-11 18:55:36 +00:00
Transforms Fix bug: InstCombine/2005-05-07-UDivSelectCrash.ll 2005-04-08 04:03:26 +00:00
VMCore First step in adding pcmarker intrinsic. Second step (soon) is adding backend support. 2005-03-28 20:05:49 +00:00
Makefile Add the Linker library 2004-11-14 21:54:41 +00:00