1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-29 23:12:55 +01:00
Commit Graph

22668 Commits

Author SHA1 Message Date
Chris Lattner
02f3db9781 Make sure that weak functions are aligned properly
llvm-svn: 26181
2006-02-14 20:42:33 +00:00
Evan Cheng
26c6d7609c Duh
llvm-svn: 26180
2006-02-14 20:37:37 +00:00
Evan Cheng
1c09cac907 Remove -disable-x86-sse
llvm-svn: 26179
2006-02-14 20:30:14 +00:00
Chris Lattner
f5f9a68dec add an assert
llvm-svn: 26178
2006-02-14 20:14:17 +00:00
Evan Cheng
5a2a9d3896 Keep to < 80 cols
llvm-svn: 26177
2006-02-14 20:12:38 +00:00
Evan Cheng
8937c047b3 Missed a break so memcpy cases fell through to memset. Doh.
llvm-svn: 26176
2006-02-14 19:45:56 +00:00
Evan Cheng
57eebe8ab4 Fixed a build breakage.
llvm-svn: 26175
2006-02-14 09:11:59 +00:00
Evan Cheng
f6c74c0096 Rename maxStoresPerMemSet to maxStoresPerMemset, etc.
llvm-svn: 26174
2006-02-14 08:38:30 +00:00
Evan Cheng
030631350f Add a entry.
llvm-svn: 26173
2006-02-14 08:25:32 +00:00
Evan Cheng
80812d1070 Set maxStoresPerMemSet to 16. Ditto for maxStoresPerMemCpy and
maxStoresPerMemMove. Although the last one is not used.

llvm-svn: 26172
2006-02-14 08:25:08 +00:00
Evan Cheng
0bfe83eb5b Expand memset dst, c, size to a series of stores if size falls below the
target specific theshold, e.g. 16 for x86.

llvm-svn: 26171
2006-02-14 08:22:34 +00:00
Evan Cheng
22eefc700f Enable SSE (for the right subtargets)
llvm-svn: 26169
2006-02-14 08:07:58 +00:00
Jeff Cohen
176bb3e5ed Match changes to unix build system.
llvm-svn: 26167
2006-02-14 06:12:08 +00:00
Chris Lattner
47f4f2c148 now that libcalls don't suck, we can remove this hack
llvm-svn: 26164
2006-02-14 05:39:35 +00:00
Chris Lattner
78250fee02 Adjust to new style "generated files in CVS" mechanism for lex output
llvm-svn: 26163
2006-02-14 05:16:35 +00:00
Chris Lattner
ca895c34ed adjust to new style of handling lexer changes
llvm-svn: 26162
2006-02-14 05:14:46 +00:00
Chris Lattner
be28034223 Adjust to new form of handling lexer dependencies, this way shouldn't have
the problems the old way did.

llvm-svn: 26161
2006-02-14 05:13:13 +00:00
Chris Lattner
f9f41e0fe1 Implement an alternative way of handling generated lex files in CVS. This
should solve the "updating cvs when .l files change give me conflict markers
that break my build" issue.

llvm-svn: 26160
2006-02-14 05:12:00 +00:00
Chris Lattner
3c0dc49fba Wrap a couple more long lines
llvm-svn: 26159
2006-02-14 04:27:15 +00:00
Chris Lattner
6bbf62d67a wrap long lines
llvm-svn: 26158
2006-02-14 04:25:54 +00:00
Chris Lattner
33fd4611f5 Use statistics to keep track of what flavors of loops we are unswitching
llvm-svn: 26157
2006-02-14 01:01:41 +00:00
Chris Lattner
d3cfbeca5b Fix a latent bug in the call sequence handling stuff. Some targets (e.g. x86)
create these nodes with flag results.  Remember that we legalized them.

llvm-svn: 26156
2006-02-14 00:55:02 +00:00
Chris Lattner
9f91f1e3c8 Implement Instcombine/and.ll:test34
llvm-svn: 26155
2006-02-13 23:07:23 +00:00
Chris Lattner
7ea9303a2f new testcase
llvm-svn: 26154
2006-02-13 23:07:02 +00:00
Chris Lattner
307a2b55bb Fix typo that caused build failures for things trying to use m_Or.
llvm-svn: 26153
2006-02-13 23:06:39 +00:00
Chris Lattner
24d29462d2 If any of the sign extended bits are demanded, the input sign bit is demanded
for a sign extension.

This fixes InstCombine/2006-02-13-DemandedMiscompile.ll and Ptrdist/bc.

llvm-svn: 26152
2006-02-13 22:41:07 +00:00
Chris Lattner
0cabe967ce testcase reduced from Ptrdist/bc that is miscompiled by recent instcombine changes.
llvm-svn: 26151
2006-02-13 22:31:50 +00:00
Chris Lattner
bdcb7e09c3 Another hack due to allowing multiple symbols with the same name.
llvm-svn: 26150
2006-02-13 22:22:42 +00:00
Chris Lattner
b0362b8640 Another work around for the 'symbols with different types can have the same
name' issue.

llvm-svn: 26149
2006-02-13 21:43:26 +00:00
Andrew Lenharth
0a245834aa improved zap discovery
llvm-svn: 26148
2006-02-13 18:52:29 +00:00
Andrew Lenharth
e5ed262832 test for improved zap discovery
llvm-svn: 26147
2006-02-13 18:52:01 +00:00
Jim Laskey
40610cacc0 Sync up the tag numbers with gcc4.
llvm-svn: 26146
2006-02-13 16:56:43 +00:00
Jim Laskey
fac853338f Rename to better reflect usage (current and planned.)
llvm-svn: 26145
2006-02-13 12:50:39 +00:00
Chris Lattner
b3fc3e3a90 Completely rewrite libcall insertion by the legalizer, providing the
following handy-dandy properties:

1. it is always correct now
2. it is much faster than before
3. it is easier to understand

This implementation builds off of the recent simplifications of the
legalizer that made it single-pass instead of iterative.

This fixes JM/lencod, JM/ldecod, and
CodeGen/Generic/2006-02-12-InsertLibcall.ll (at least on PPC).

llvm-svn: 26144
2006-02-13 09:18:02 +00:00
Chris Lattner
599b432345 Switch targets over to using SelectionDAG::getCALLSEQ_START to create
CALLSEQ_START nodes.

llvm-svn: 26143
2006-02-13 09:00:43 +00:00
Chris Lattner
9db5a1fd19 Switch to using getCALLSEQ_START instead of using our own creation calls
llvm-svn: 26142
2006-02-13 08:55:29 +00:00
Chris Lattner
2d35c6e90f Add a method
llvm-svn: 26141
2006-02-13 08:54:46 +00:00
Chris Lattner
6be56c0224 this passes now, due to Nate's recent efforts
llvm-svn: 26140
2006-02-13 07:26:36 +00:00
Chris Lattner
08a6bf6cd6 Reduce this testcase a bit more, with the help of llvm-extract and some hand tweaks
llvm-svn: 26139
2006-02-13 07:02:50 +00:00
Chris Lattner
19ac3230f6 Be careful not to request or look at bits shifted in from outside the size
of the input.  This fixes the mediabench/gsm/toast failure last night.

llvm-svn: 26138
2006-02-13 06:09:08 +00:00
Evan Cheng
d743021686 Added a test case for a libcall insertion bug.
llvm-svn: 26137
2006-02-12 10:24:00 +00:00
Nate Begeman
7261b82dd7 Add missing patterns for andi. and andis., fixing test/Regression/CodeGen/
PowerPC/and-imm.ll

llvm-svn: 26136
2006-02-12 09:09:52 +00:00
Chris Lattner
3b748923cd remove some more dead special case code
llvm-svn: 26135
2006-02-12 08:07:37 +00:00
Chris Lattner
169c4ef1ec Eliminate special case hacks that are superceded by general purpose hacks
llvm-svn: 26134
2006-02-12 08:02:11 +00:00
Chris Lattner
5e867a74d3 tweaks
llvm-svn: 26133
2006-02-12 08:01:35 +00:00
Chris Lattner
c1cb72a3a3 Three changes:
1. Teach GetConstantInType to handle boolean constants.
2. Teach instcombine to fold (compare X, CST) when X has known 0/1 bits.
   Testcase here: set.ll:test22
3. Improve the "(X >> c1) & C2 == 0" folding code to allow a noop cast
   between the shift and and.  More aggressive bitfolding for other reasons
   was turning signed shr's into unsigned shr's, leaving the noop cast in
   the way.

llvm-svn: 26131
2006-02-12 02:07:56 +00:00
Chris Lattner
0583a337fb new testcase
llvm-svn: 26130
2006-02-12 02:06:31 +00:00
Chris Lattner
76e0e3fe40 move a failing testcase from bit-tracking.ll to narrow.ll, and move the
xfail marker with it

llvm-svn: 26129
2006-02-12 02:02:43 +00:00
Chris Lattner
54a36a05b3 Revert my last patch. It too breaks stuff
llvm-svn: 26128
2006-02-12 01:59:10 +00:00
Chris Lattner
d8c54dc866 Make these tests fail if opt crashes.
llvm-svn: 26127
2006-02-12 01:32:58 +00:00