1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 05:52:53 +02:00
Commit Graph

27401 Commits

Author SHA1 Message Date
Chris Lattner
a193c9c977 encode BLR predicate info for the JIT
llvm-svn: 31450
2006-11-04 05:42:48 +00:00
Chris Lattner
a7687f805c Go through all kinds of trouble to mark 'blr' as having a predicate operand
that takes a register and condition code.  Print these pieces of BLR the
right way, even though it is currently set to 'always'.

Next up: get the JIT encoding right, then enhance branch folding to produce
predicated blr for simple examples.

llvm-svn: 31449
2006-11-04 05:27:39 +00:00
Chris Lattner
8dac4564af Parse PredicateOperand's. When an instruction takes one, have the generated
isel fill in the instruction operands with the 'execute always' value
automatically.

llvm-svn: 31448
2006-11-04 05:12:02 +00:00
Chris Lattner
f7ad33f01b First steps to getting PredicateOperand's to work. This handles instruction
and pat pattern definitions.  Codegen is not right for them yet.

llvm-svn: 31444
2006-11-04 01:35:50 +00:00
Reid Spencer
dcce9e0cc9 Okay, need a pattern before and after the cast pattern.
llvm-svn: 31443
2006-11-04 01:11:19 +00:00
Reid Spencer
bb2e479ee9 Allow the regular expression to be extended by a parameter.
llvm-svn: 31442
2006-11-04 00:58:39 +00:00
Reid Spencer
cc134bcc6c For PR950:
A little script to return 1 if it encounters any of the cast instructions
on the stdin.

llvm-svn: 31441
2006-11-04 00:49:52 +00:00
Reid Spencer
de9cf90c66 Add a note about warnings from the GNU ld 2.16.X linker.
llvm-svn: 31440
2006-11-04 00:33:42 +00:00
Evan Cheng
4328919c08 Fixed some spiller bugs exposed by the recent two-address code changes. Now
there may be other def(s) apart from the use&def two-address operand. We need
to check if the register reuse for a use&def operand may conflicts with another
def. Provide a mean to recover from the conflict if it is detected when the
defs are processed later.

llvm-svn: 31439
2006-11-04 00:21:55 +00:00
Chris Lattner
db04ba8502 Describe PPC predicates, which are a pair of CR# and condition.
llvm-svn: 31438
2006-11-03 23:53:25 +00:00
Chris Lattner
4296d2e0fa initial steps to getting the predicate on PPC::BLR right.
llvm-svn: 31437
2006-11-03 23:52:18 +00:00
Chris Lattner
f9394871ff remove dead var
llvm-svn: 31436
2006-11-03 23:50:15 +00:00
Chris Lattner
7c265ad682 remove dead/redundant vars
llvm-svn: 31435
2006-11-03 23:48:56 +00:00
Chris Lattner
a69c6416ca remove redundant/dead vars
llvm-svn: 31434
2006-11-03 23:47:20 +00:00
Chris Lattner
5f953f0927 remove dead vars
llvm-svn: 31433
2006-11-03 23:46:45 +00:00
Chris Lattner
5eca521156 eliminate need for the NumMIOperands field in Operand.
llvm-svn: 31432
2006-11-03 23:45:17 +00:00
Andrew Lenharth
c2f822392c The wrong parameter was being tested to deturmine i32 vs i64
llvm-svn: 31431
2006-11-03 22:45:50 +00:00
Andrew Lenharth
1a81dcf240 add a regression for memmove
llvm-svn: 31430
2006-11-03 22:45:09 +00:00
Chris Lattner
2cb1391e09 add a note
llvm-svn: 31429
2006-11-03 22:27:39 +00:00
Chris Lattner
d8275c91a5 this started failing due to Reid's changes in the bc format. insulate it
from future changes.

llvm-svn: 31428
2006-11-03 22:01:15 +00:00
Chris Lattner
bbc4261790 Fix BasicAA/2006-11-03-BasicAAVectorCrash.ll by handling out-of-range
vector accesses like we handle out-of-range array accesses.

llvm-svn: 31427
2006-11-03 21:58:48 +00:00
Chris Lattner
87d4149351 new testcase
llvm-svn: 31426
2006-11-03 21:58:14 +00:00
Reid Spencer
45c30d6827 Make the huge_val test run a C++ program not C
llvm-svn: 31422
2006-11-03 19:49:16 +00:00
Chris Lattner
7628decccf this will work better
llvm-svn: 31419
2006-11-03 19:15:55 +00:00
Chris Lattner
8bf77463ea Fix the build on xcode < 2.4
llvm-svn: 31417
2006-11-03 19:13:59 +00:00
Reid Spencer
4b9f2de647 Add a check to see if HUGE_VAL is sane or not.
llvm-svn: 31416
2006-11-03 18:04:08 +00:00
Andrew Lenharth
8a81e9e264 Split the External and Intrinsic handling into seperate functions. This
improves readability of the call handling code significantly, as well as
makes it clear which parts are hacky (externals) and which parts are good
(call handling).

No functionality change.

llvm-svn: 31415
2006-11-03 17:43:19 +00:00
Evan Cheng
047a33d3e3 Fix comments.
llvm-svn: 31414
2006-11-03 07:31:32 +00:00
Evan Cheng
466e20fca2 Rename
llvm-svn: 31413
2006-11-03 07:21:16 +00:00
Reid Spencer
8cac48e619 Remove dead variable. Fix 80 column violations.
llvm-svn: 31412
2006-11-03 03:30:34 +00:00
Rafael Espindola
3459a4b85b revert previous patch
llvm-svn: 31411
2006-11-03 03:08:28 +00:00
Evan Cheng
a0133317f7 Added DAG combiner transformation to generate pre-indexed loads.
llvm-svn: 31410
2006-11-03 03:06:21 +00:00
Evan Cheng
b9ed18642c Added isPredecessor.
llvm-svn: 31409
2006-11-03 03:05:24 +00:00
Evan Cheng
79570c731a Proper check for two-addressness.
llvm-svn: 31408
2006-11-03 03:04:46 +00:00
Evan Cheng
9ebbced355 Added a target specific hook to check whether / how a node can be transformed
into a pair of base / offset nodes for pre-indexed load / store ops.

llvm-svn: 31407
2006-11-03 03:04:06 +00:00
Evan Cheng
b19289a84d Add isPredecessor to check whether a node is another's predecessor.
llvm-svn: 31406
2006-11-03 03:02:18 +00:00
Evan Cheng
54c4be233e Dead code.
llvm-svn: 31405
2006-11-03 02:08:41 +00:00
Reid Spencer
f036c59ca0 Remove unused variable.
llvm-svn: 31404
2006-11-03 01:58:30 +00:00
Reid Spencer
da581ac715 Remove an unused variable.
llvm-svn: 31403
2006-11-03 01:48:30 +00:00
Chris Lattner
f6b840a1ae silence warning
llvm-svn: 31402
2006-11-03 01:45:13 +00:00
Reid Spencer
52135336f2 Remove some dead code.
llvm-svn: 31401
2006-11-03 01:44:51 +00:00
Rafael Espindola
5cfe91aaca add createCFGSimplificationPass to ARMTargetMachine::addInstSelector
llvm-svn: 31400
2006-11-03 01:39:25 +00:00
Rafael Espindola
ef14a04371 assert.h -> cassert
llvm-svn: 31399
2006-11-03 01:38:14 +00:00
Chris Lattner
8f8a1ed82e remove dead code
llvm-svn: 31398
2006-11-03 01:34:58 +00:00
Chris Lattner
d4881b4e2d silence warning
llvm-svn: 31397
2006-11-03 01:28:29 +00:00
Reid Spencer
d41f385ed9 Don't write out variables that are never used.
llvm-svn: 31396
2006-11-03 01:28:12 +00:00
Chris Lattner
294085b9be silence warning
llvm-svn: 31395
2006-11-03 01:19:31 +00:00
Chris Lattner
13ae6835d9 silence warnings.
llvm-svn: 31394
2006-11-03 01:18:29 +00:00
Chris Lattner
24e8fdc1f6 silence warning
llvm-svn: 31393
2006-11-03 01:13:15 +00:00
Chris Lattner
71ce2c5de5 silence warnings
llvm-svn: 31392
2006-11-03 01:11:05 +00:00