1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/lib
Chris Lattner 2e7125dc74 in X86-64 CCC, i8/i16 arguments are already properly zext/sext'd on input.
Capture this so that downstream zext/sext's are optimized out.  This
compiles:
  int test(short X) { return (int)X; }

to:

_test:
        movl %edi, %eax
        ret

instead of:

_test:
        movswl %di, %eax
        ret


GCC produces this bizarre code:

_test:
        movw    %di, -12(%rsp)
        movswl  -12(%rsp),%eax
        ret

llvm-svn: 34623
2007-02-26 03:18:56 +00:00
..
Analysis Fix thinko. 2007-02-23 18:05:55 +00:00
AsmParser remove dead methods 2007-02-19 07:44:24 +00:00
Bytecode For PR1195: 2007-02-15 03:39:18 +00:00
CodeGen Fold (sext (truncate x)) more aggressively, by avoiding creation of a 2007-02-26 03:13:59 +00:00
Debugger
ExecutionEngine Fix PR1216 by cleaning up the ownership of JITResolver. 2007-02-24 02:57:03 +00:00
Linker For PR1195: 2007-02-15 02:26:10 +00:00
Support Rewrite lshr to not do bit by bit copy but to copy and shift whole words. 2007-02-26 01:19:48 +00:00
System Add possibility to set memory limit for binaries run via libSystem. This 2007-02-16 19:11:07 +00:00
Target in X86-64 CCC, i8/i16 arguments are already properly zext/sext'd on input. 2007-02-26 03:18:56 +00:00
Transforms Fix InstCombine/2007-02-23-PhiFoldInfLoop.ll and PR1217 2007-02-24 01:03:45 +00:00
VMCore Rework GlobalValue::removeDeadConstantUsers to always remove dead constant 2007-02-25 21:06:13 +00:00
Makefile Changes to support making the shift instructions be true BinaryOperators. 2007-02-02 02:16:23 +00:00