1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
Commit Graph

29449 Commits

Author SHA1 Message Date
Evan Cheng
e450d1bfa4 Ugh. Only meant to do this in thumb mode.
llvm-svn: 33780
2007-02-02 08:58:48 +00:00
Chris Lattner
1f032e74ae bugfix for reid's shift patch.
llvm-svn: 33779
2007-02-02 05:29:55 +00:00
Chris Lattner
63479262b4 add a note
llvm-svn: 33778
2007-02-02 04:36:46 +00:00
Reid Spencer
1b0dd17ea9 1. Break long lines to 80 col limit
2. Fix indentation
3. Renumber the instruction opcodes after the Shift became a binary operator.

llvm-svn: 33777
2007-02-02 02:30:19 +00:00
Reid Spencer
591bfa1e0b Changes to support making the shift instructions be true BinaryOperators.
This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.

llvm-svn: 33776
2007-02-02 02:16:23 +00:00
Evan Cheng
689b0a4a62 Fix a bug in getARMCMP (which translate CondCode to ARM specific CC) when the RHS is a constant.
llvm-svn: 33775
2007-02-02 01:53:26 +00:00
Evan Cheng
73975a6076 Thumb does not have clz.
llvm-svn: 33773
2007-02-01 23:34:03 +00:00
Devang Patel
e5e4a44cca Dump function names when debug-pass=Executions is used.
llvm-svn: 33772
2007-02-01 22:38:33 +00:00
Chris Lattner
2d85458c52 Fix Transforms/InstCombine/2007-02-01-LoadSinkAlloca.ll, a serious code
pessimization where instcombine can sink a load (good for code size) that
prevents an alloca from being promoted by mem2reg (bad for everything).

llvm-svn: 33771
2007-02-01 22:30:07 +00:00
Chris Lattner
49d3308f43 new testcase for serious code pessimization
llvm-svn: 33770
2007-02-01 22:29:26 +00:00
Reid Spencer
1f769ed900 My mistake, my environment wasn't up to date. This passes now.
llvm-svn: 33769
2007-02-01 22:26:42 +00:00
Reid Spencer
b47ac467a6 XFAIL this on x86 linux as it continues to fail.
llvm-svn: 33768
2007-02-01 22:10:46 +00:00
Devang Patel
3f71179e2d Pretty print pass managers.
llvm-svn: 33767
2007-02-01 22:10:12 +00:00
Devang Patel
015a474023 Pretty print pass manager
llvm-svn: 33766
2007-02-01 22:09:37 +00:00
Devang Patel
f178d112ce cvs commit
llvm-svn: 33765
2007-02-01 22:08:25 +00:00
Reid Spencer
1f2f4ae151 Make sure the value passed to test function is initialized.
llvm-svn: 33764
2007-02-01 21:58:46 +00:00
Lauro Ramos Venancio
5765bcd825 Define PrivateGlobalPrefix for ARM Linux. (Fix CodeGen/ARM/large_stack.ll)
llvm-svn: 33763
2007-02-01 21:43:53 +00:00
Evan Cheng
3d9b702988 Pasto. Lots of it.
llvm-svn: 33762
2007-02-01 20:44:52 +00:00
Reid Spencer
eb51781c22 Ensure that ConvertOperandToType generates a result conversion by
initializing the Res variable to 0 and asserting it is not zero after the
result should have been created.

llvm-svn: 33761
2007-02-01 19:14:51 +00:00
Chris Lattner
618f24b0ed Fix bugs in the inliner having to do with single-entry phi nodes and valuemap
updating.  These were exposed by Devang's recent passmgr changes (with
non-default passorderings) because now the inliner can be interleved with
the LCSSA pass.

llvm-svn: 33760
2007-02-01 18:48:38 +00:00
Lauro Ramos Venancio
5781691b22 Fix .thumb_func directive on linux.
llvm-svn: 33759
2007-02-01 18:25:34 +00:00
Jim Laskey
56f947d112 Slip up
llvm-svn: 33758
2007-02-01 17:48:20 +00:00
Jim Laskey
13d6220cbb Emit labels as label_n and not as debug_n
llvm-svn: 33757
2007-02-01 17:46:10 +00:00
Andrew Lenharth
95c86563cd preserve sections of globals
llvm-svn: 33756
2007-02-01 17:12:54 +00:00
Jim Laskey
52a12383a4 Support for non-landing pad exception handling.
llvm-svn: 33755
2007-02-01 16:31:34 +00:00
Reid Spencer
2d41dbae16 Fix a homonymo in a comment.
llvm-svn: 33754
2007-02-01 12:09:51 +00:00
Evan Cheng
88b703eec4 - Off by one bugs in maximum displacement calculation / testing.
- In thumb mode, a new constpool island BB size should be 4 + 2 to
  compensate for the potential padding due to alignment requirement.

llvm-svn: 33753
2007-02-01 10:16:15 +00:00
Anton Korobeynikov
c469cbc2e7 Fixed uninitialized stuff inside LegalizeDAG. Fortunately, the only
affected part is codegen of "memove" inside x86 backend. This fixes
PR1144

llvm-svn: 33752
2007-02-01 08:39:52 +00:00
Chris Lattner
fe31060a23 Add a new dense hash table implementation
llvm-svn: 33751
2007-02-01 07:49:59 +00:00
Chris Lattner
9795be05c4 improve comments, add an assertion
llvm-svn: 33750
2007-02-01 05:33:21 +00:00
Chris Lattner
a24a3aaa94 rename DenseMap to IndexedMap.
llvm-svn: 33749
2007-02-01 05:32:05 +00:00
Chris Lattner
e61728144b rename DenseMap -> IndexedMap.
llvm-svn: 33748
2007-02-01 05:28:10 +00:00
Chris Lattner
ca583c51b3 silence some warnings when assertions are disabled.
llvm-svn: 33747
2007-02-01 04:59:37 +00:00
Chris Lattner
51faab4a6f silence warning
llvm-svn: 33746
2007-02-01 04:57:00 +00:00
Chris Lattner
36dbbd2550 Fit in 80 columns
llvm-svn: 33745
2007-02-01 04:55:59 +00:00
Evan Cheng
d3dc2eefc2 .set pc relative displacement bug: label should be moved down one instruction
to just before the add r1, pc:

Before:
        .set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
LPCRELL0:
        mov r1, #PCRELV0
        add r1, pc

Now:
        .set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
        mov r1, #PCRELV0
LPCRELL0:
        add r1, pc

llvm-svn: 33744
2007-02-01 03:04:49 +00:00
Evan Cheng
eafe1f7bd9 Add a note.
llvm-svn: 33743
2007-02-01 02:46:20 +00:00
Evan Cheng
a5c5daf15d Add a test case.
llvm-svn: 33742
2007-02-01 02:27:24 +00:00
Evan Cheng
9f177f9058 Also set alignment of stack-based structs to 4 in thumb mode.
llvm-svn: 33741
2007-02-01 02:18:36 +00:00
Evan Cheng
e9701dce51 Added a thumb vararg test.
llvm-svn: 33740
2007-02-01 01:56:43 +00:00
Evan Cheng
439dcbedba Special epilogue for vararg functions. We cannot do a pop to pc because
there follows a sp increment for the va register save region. Instead issue
a separate pop to another register, increment sp, and then return:
        pop {r4, r5, r6, r7}
        pop {r3}
        add sp, #3 * 4
        bx r3

llvm-svn: 33739
2007-02-01 01:49:46 +00:00
Devang Patel
c6531e1867 Add printVersion(). Linker can use it to print LLVM version number.
llvm-svn: 33738
2007-02-01 01:46:06 +00:00
Devang Patel
46a1a617f5 Add PrintVersionMessage() that tools can use to print version number
without exiting program.

llvm-svn: 33737
2007-02-01 01:43:37 +00:00
Chris Lattner
18483c395e Emit a better assertion message for PR1133
llvm-svn: 33736
2007-02-01 01:21:12 +00:00
Devang Patel
ed232690d6 Include Makefile.config before testing OS.
llvm-svn: 33735
2007-02-01 01:18:57 +00:00
Evan Cheng
9f87fca49c Pessmistically assume the .align 2 before the first constpool entry adds
two bytes padding.

llvm-svn: 33734
2007-02-01 01:09:47 +00:00
Evan Cheng
3d8d381600 Possible JT improvements.
llvm-svn: 33733
2007-02-01 01:07:48 +00:00
Chris Lattner
f4e5c29cb9 Fix CodeGen/PowerPC/2007-01-31-InlineAsmAddrMode.ll
llvm-svn: 33732
2007-02-01 00:39:08 +00:00
Chris Lattner
c0baa88c14 new testcase
llvm-svn: 33731
2007-02-01 00:38:56 +00:00
Evan Cheng
b689aef6e2 Fix test case.
llvm-svn: 33730
2007-01-31 23:51:35 +00:00