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

26363 Commits

Author SHA1 Message Date
Chris Lattner
0208f77fb0 new testcase for PR906
llvm-svn: 30267
2006-09-11 22:48:23 +00:00
Chris Lattner
0cffa03571 Fix PR905 and InstCombine/2006-09-11-EmptyStructCrash.ll
llvm-svn: 30266
2006-09-11 21:43:16 +00:00
Chris Lattner
881d803f01 new testcase for PR905
llvm-svn: 30265
2006-09-11 21:41:56 +00:00
Rafael Espindola
7722bae67e implement SRL and MUL
llvm-svn: 30262
2006-09-11 19:24:19 +00:00
Rafael Espindola
d8b1142d79 add the correct fallback for ARMDAGToDAGISel::SelectAddrMode1
llvm-svn: 30261
2006-09-11 19:23:32 +00:00
Chris Lattner
edab43567c burg is gone
llvm-svn: 30253
2006-09-11 17:28:11 +00:00
Rafael Espindola
89ac048c5d partial implementation of the ARM Addressing Mode 1
llvm-svn: 30252
2006-09-11 17:25:40 +00:00
Nick Lewycky
f9acdaf05e Skip the linear search if the answer is already known.
llvm-svn: 30251
2006-09-11 17:23:34 +00:00
Jim Laskey
eda9265efc No longer used, and confuses maintainers
llvm-svn: 30248
2006-09-11 16:02:58 +00:00
John Criswell
521d621642 Include the UIUC CS department attribution on the main doxygen page.
llvm-svn: 30247
2006-09-11 14:52:26 +00:00
Rafael Espindola
a8dd3960f1 call AsmPrinter::doInitialization in ARMAsmPrinter::doInitialization
llvm-svn: 30246
2006-09-11 12:49:38 +00:00
Evan Cheng
78f5fae07f Updates.
llvm-svn: 30245
2006-09-11 05:35:17 +00:00
Evan Cheng
64720acdb9 Update README file.
llvm-svn: 30244
2006-09-11 05:25:15 +00:00
Evan Cheng
c55e151e45 Rename a test-not-cmp.ll to cmp-test.ll; add a test.
llvm-svn: 30243
2006-09-11 02:33:29 +00:00
Evan Cheng
f82eb13e3b 1) With X86 lowering change, the following can no longer happen since
the branch's chain is also produced by cmp.
          [ch, r : ld]
             ^ ^
             | |
      [XX]--/   \- [flag : cmp]
       ^             ^
       |             |
       \---[br flag]-

Remove an isel check which prevents loads from being folded into cmp / test
instructions.

2) Whenever possible, delete a selected node to allow more load folding
opportunities. Note not all nodes can be deleted after it has been
selected. Some may have simply morphed; some have not changed at all (e.g.
EntryToken).

llvm-svn: 30242
2006-09-11 02:24:43 +00:00
Evan Cheng
cfd7b147cf X86ISD::CMP now produces a chain as well as a flag. Make that the chain
operand of a conditional branch to allow load folding into CMP / TEST
instructions.

llvm-svn: 30241
2006-09-11 02:19:56 +00:00
Nate Begeman
1109e4a222 Behold, more work on relocations. Things are looking pretty good now.
llvm-svn: 30240
2006-09-10 23:03:44 +00:00
Anton Korobeynikov
4141c7992e Removed unnecessary Mangler creation.
llvm-svn: 30239
2006-09-10 21:17:03 +00:00
Chris Lattner
02d50a2254 add a testcase for this commit: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20050606/026673.html
llvm-svn: 30238
2006-09-10 18:52:25 +00:00
Chris Lattner
2921612126 Allow tail duplication in more cases, relaxing the previous restriction a
bit.  This fixes Regression/Transforms/TailDup/MergeTest.ll

llvm-svn: 30237
2006-09-10 18:17:58 +00:00
Chris Lattner
480465a171 This code was trying too hard. By eliminating redundant edges in the CFG
due to switch cases going to the same place, it make #pred != #phi entries,
breaking live interval analysis.

This fixes 458.sjeng on x86 with llc.

llvm-svn: 30236
2006-09-10 06:36:57 +00:00
Nick Lewycky
3bfe103166 Replace EquivalenceClasses with a custom-built data structure. Many common
operations (like findProperties) should be faster, at the expense of
unionSets being slower in cases that are rare in practise.

Don't erase a dead Instruction. This fixes a memory corruption issue.

llvm-svn: 30235
2006-09-10 02:27:07 +00:00
Chris Lattner
91d21d85e8 Implement Transforms/InstCombine/hoist_instr.ll
llvm-svn: 30234
2006-09-09 22:02:56 +00:00
Chris Lattner
2343a5c79f new testcase
llvm-svn: 30233
2006-09-09 22:02:25 +00:00
Chris Lattner
1f4901d69e Move ipsccp pass earlier to clean up obvious bogosities
llvm-svn: 30232
2006-09-09 21:30:13 +00:00
Chris Lattner
2122c2e124 Make inlining costs more accurate.
llvm-svn: 30231
2006-09-09 20:40:44 +00:00
Chris Lattner
6847781b3e Turn div X, (Cond ? Y : 0) -> div X, Y
This implements select.ll::test18.

llvm-svn: 30230
2006-09-09 20:26:32 +00:00
Chris Lattner
053797e5c7 new testcase
llvm-svn: 30229
2006-09-09 20:26:04 +00:00
Jim Laskey
a482c765bb Missing anchor
llvm-svn: 30227
2006-09-09 09:10:37 +00:00
Chris Lattner
e4ef84f421 Add cbe support for powi
llvm-svn: 30226
2006-09-09 06:17:12 +00:00
Chris Lattner
b935214653 Implement the fpowi now by lowering to a libcall
llvm-svn: 30225
2006-09-09 06:03:30 +00:00
Chris Lattner
00b84b6eab (indirect) test for the __builtin_powi builtin which we now support.
llvm-svn: 30224
2006-09-09 06:02:16 +00:00
Chris Lattner
7005757ced Implement new fpowi node
llvm-svn: 30223
2006-09-09 05:55:44 +00:00
Chris Lattner
8536526496 Allow targets to custom lower expanded BIT_CONVERT's
llvm-svn: 30217
2006-09-09 00:20:27 +00:00
Nate Begeman
2dfa13e74f First pass at supporting relocations. Relocations are written correctly to
the file now, however the relocated address is currently wrong.  Fixing
that will require some deep pondering.

llvm-svn: 30207
2006-09-08 22:42:09 +00:00
Evan Cheng
59e25ca829 Fixed a FuseTwoAddrInst() bug: consider GlobalAddress and JumpTableIndex
in addition to immediate operands.

llvm-svn: 30205
2006-09-08 21:08:13 +00:00
Chris Lattner
d269774664 Non-allocatable physregs can be killed and dead, but don't treat them as
safe for later allocation.  This fixes McCat/18-imp with llc-beta.

llvm-svn: 30204
2006-09-08 20:21:31 +00:00
Chris Lattner
a531dd1879 This fixes Benchmarks/Prolangs-C/unix-smail
llvm-svn: 30198
2006-09-08 19:11:11 +00:00
Chris Lattner
16e4937a31 Fix a bunch of llc-beta failures on x86 yesterday. Don't allow selection
of unallocatable registers, just because an alias is allocatable.  We were
picking registers like SIL just because ESI was being used.

llvm-svn: 30197
2006-09-08 19:03:30 +00:00
Chris Lattner
818f2a71e8 ok this really works :)
llvm-svn: 30195
2006-09-08 18:33:49 +00:00
Devang Patel
325ff2c001 Remove redundant include.
llvm-svn: 30194
2006-09-08 18:20:25 +00:00
Chris Lattner
701a3083ec Need to include Makefile.config to get the value of $(OS). Add a comment.
llvm-svn: 30193
2006-09-08 18:08:50 +00:00
Anton Korobeynikov
c63a56537f Enabling LTO building on Darwin only right now. This probably should be
removed after 'PIC vs non-PIC' problem solution

llvm-svn: 30192
2006-09-08 18:00:43 +00:00
Rafael Espindola
20146be5e8 implement shl and sra
llvm-svn: 30191
2006-09-08 17:36:23 +00:00
Chris Lattner
6366d97d9e Use __USER_LABEL_PREFIX__ to get the prefix added by the current host.
llvm-svn: 30190
2006-09-08 17:03:56 +00:00
Rafael Espindola
9ffcdb8ab7 add the eor (xor) instruction
llvm-svn: 30189
2006-09-08 16:59:47 +00:00
Jim Laskey
8cbf601f06 Missing tab
llvm-svn: 30188
2006-09-08 13:06:56 +00:00
Rafael Espindola
faf67d2718 fix select.ll to always test a select node
llvm-svn: 30187
2006-09-08 12:52:50 +00:00
Rafael Espindola
af1689d5a5 implement unconditional branches
fix select.ll

llvm-svn: 30186
2006-09-08 12:47:03 +00:00
Evan Cheng
9d17d65cc4 Generated isel should favors explicit constant operand (+2) over an operand with a predicate (+1).
llvm-svn: 30180
2006-09-08 07:26:39 +00:00