Chris Lattner
6be726048e
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
ed07f23c52
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
1faa9097c7
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
de6bce9e02
Okay, need a pattern before and after the cast pattern.
...
llvm-svn: 31443
2006-11-04 01:11:19 +00:00
Reid Spencer
260a93abc2
Allow the regular expression to be extended by a parameter.
...
llvm-svn: 31442
2006-11-04 00:58:39 +00:00
Reid Spencer
c533824a9e
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
6291ddca16
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
51733ed4a3
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
c8a68d08c3
Describe PPC predicates, which are a pair of CR# and condition.
...
llvm-svn: 31438
2006-11-03 23:53:25 +00:00
Chris Lattner
4905d2c5b4
initial steps to getting the predicate on PPC::BLR right.
...
llvm-svn: 31437
2006-11-03 23:52:18 +00:00
Chris Lattner
4fcc04a32a
remove dead var
...
llvm-svn: 31436
2006-11-03 23:50:15 +00:00
Chris Lattner
9ac6442db6
remove dead/redundant vars
...
llvm-svn: 31435
2006-11-03 23:48:56 +00:00
Chris Lattner
eb7128465d
remove redundant/dead vars
...
llvm-svn: 31434
2006-11-03 23:47:20 +00:00
Chris Lattner
895d199348
remove dead vars
...
llvm-svn: 31433
2006-11-03 23:46:45 +00:00
Chris Lattner
7982de167f
eliminate need for the NumMIOperands field in Operand.
...
llvm-svn: 31432
2006-11-03 23:45:17 +00:00
Andrew Lenharth
0ebb0b03e6
The wrong parameter was being tested to deturmine i32 vs i64
...
llvm-svn: 31431
2006-11-03 22:45:50 +00:00
Andrew Lenharth
95a1c854d3
add a regression for memmove
...
llvm-svn: 31430
2006-11-03 22:45:09 +00:00
Chris Lattner
2048373e71
add a note
...
llvm-svn: 31429
2006-11-03 22:27:39 +00:00
Chris Lattner
2d242aba18
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
ea2abe2384
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
67af941db1
new testcase
...
llvm-svn: 31426
2006-11-03 21:58:14 +00:00
Reid Spencer
7b7ab9c59a
Make the huge_val test run a C++ program not C
...
llvm-svn: 31422
2006-11-03 19:49:16 +00:00
Chris Lattner
bb3ea2a437
this will work better
...
llvm-svn: 31419
2006-11-03 19:15:55 +00:00
Chris Lattner
a35f8c16c4
Fix the build on xcode < 2.4
...
llvm-svn: 31417
2006-11-03 19:13:59 +00:00
Reid Spencer
128ae10611
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
01a4a5d07e
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
9456dd8b81
Fix comments.
...
llvm-svn: 31414
2006-11-03 07:31:32 +00:00
Evan Cheng
1dfd26a151
Rename
...
llvm-svn: 31413
2006-11-03 07:21:16 +00:00
Reid Spencer
52f958741a
Remove dead variable. Fix 80 column violations.
...
llvm-svn: 31412
2006-11-03 03:30:34 +00:00
Rafael Espindola
4ece5c04f4
revert previous patch
...
llvm-svn: 31411
2006-11-03 03:08:28 +00:00
Evan Cheng
357017f4a9
Added DAG combiner transformation to generate pre-indexed loads.
...
llvm-svn: 31410
2006-11-03 03:06:21 +00:00
Evan Cheng
c176f038b9
Added isPredecessor.
...
llvm-svn: 31409
2006-11-03 03:05:24 +00:00
Evan Cheng
299022d514
Proper check for two-addressness.
...
llvm-svn: 31408
2006-11-03 03:04:46 +00:00
Evan Cheng
76326b0540
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
fe70c79e67
Add isPredecessor to check whether a node is another's predecessor.
...
llvm-svn: 31406
2006-11-03 03:02:18 +00:00
Evan Cheng
94b29e9e91
Dead code.
...
llvm-svn: 31405
2006-11-03 02:08:41 +00:00
Reid Spencer
3056ebeb22
Remove unused variable.
...
llvm-svn: 31404
2006-11-03 01:58:30 +00:00
Reid Spencer
03c6038226
Remove an unused variable.
...
llvm-svn: 31403
2006-11-03 01:48:30 +00:00
Chris Lattner
16e05c378d
silence warning
...
llvm-svn: 31402
2006-11-03 01:45:13 +00:00
Reid Spencer
6b1fe928b1
Remove some dead code.
...
llvm-svn: 31401
2006-11-03 01:44:51 +00:00
Rafael Espindola
38b162c1d2
add createCFGSimplificationPass to ARMTargetMachine::addInstSelector
...
llvm-svn: 31400
2006-11-03 01:39:25 +00:00
Rafael Espindola
f16dbf697a
assert.h -> cassert
...
llvm-svn: 31399
2006-11-03 01:38:14 +00:00
Chris Lattner
62e2cad6b8
remove dead code
...
llvm-svn: 31398
2006-11-03 01:34:58 +00:00
Chris Lattner
cd7b92251d
silence warning
...
llvm-svn: 31397
2006-11-03 01:28:29 +00:00
Reid Spencer
5314f04de5
Don't write out variables that are never used.
...
llvm-svn: 31396
2006-11-03 01:28:12 +00:00
Chris Lattner
799b96be08
silence warning
...
llvm-svn: 31395
2006-11-03 01:19:31 +00:00
Chris Lattner
b974b0a3e1
silence warnings.
...
llvm-svn: 31394
2006-11-03 01:18:29 +00:00
Chris Lattner
de2f0906e4
silence warning
...
llvm-svn: 31393
2006-11-03 01:13:15 +00:00
Chris Lattner
71f55131d4
silence warnings
...
llvm-svn: 31392
2006-11-03 01:11:05 +00:00
Reid Spencer
b795c434e5
Make sample project -pedantic clean.
...
llvm-svn: 31391
2006-11-03 00:09:53 +00:00