1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00
Commit Graph

26282 Commits

Author SHA1 Message Date
Bill Wendling
3f7ab0eb9f *** empty log message ***
llvm-svn: 30145
2006-09-07 08:39:35 +00:00
Bill Wendling
e2623c5f2f Fixed my rotten Engrish grammar.
llvm-svn: 30144
2006-09-07 08:36:28 +00:00
Chris Lattner
bd8206ddf2 cleanups and updates to the GSG, patch by B Scott Michel, thanks!
This is PR899

llvm-svn: 30143
2006-09-07 04:19:09 +00:00
Chris Lattner
8b75d6e068 Fix CodeGen/Generic/2006-09-06-SwitchLowering.ll, a bug where SDIsel inserted
too many phi operands when lowering a switch to branches in some cases.

llvm-svn: 30142
2006-09-07 01:59:34 +00:00
Chris Lattner
d394bd49a8 New testcase for a switch lowering bug.
llvm-svn: 30141
2006-09-07 01:59:05 +00:00
Evan Cheng
451baeaf79 Clean up.
llvm-svn: 30140
2006-09-07 01:17:57 +00:00
Chris Lattner
6fbd159a5f testcase, ensure this never breaks.
llvm-svn: 30137
2006-09-06 21:54:59 +00:00
Evan Cheng
5bb0ec5c15 Watch out for variable_ops instructions.
llvm-svn: 30135
2006-09-06 20:32:45 +00:00
Evan Cheng
d299a28d86 Variable ops instructions may ignore the last few operands for code emission.
llvm-svn: 30134
2006-09-06 20:24:14 +00:00
Devang Patel
9f95e0d3cf Document getTargetTriple().
llvm-svn: 30133
2006-09-06 20:22:55 +00:00
Devang Patel
2e6c5085f8 Add getTargetTriple() that linker can use to query target architecture.
llvm-svn: 30132
2006-09-06 20:16:28 +00:00
Jim Laskey
8e922904ce Oops - forgot to update banner.
llvm-svn: 30131
2006-09-06 19:21:41 +00:00
Devang Patel
bb3ca8e494 Keep track of all modules crated using a name to module map.
Add private member function getMoudle().

llvm-svn: 30130
2006-09-06 18:50:26 +00:00
Bill Wendling
1a6e014f29 Cleaned up some of the grammar in the Live Intervals section. Removed the
huge honking FIXME comment. I'll address the "Live Intervals Analysis"
section soon.

llvm-svn: 30129
2006-09-06 18:42:41 +00:00
Jim Laskey
9327f58888 Update project with new files.
llvm-svn: 30128
2006-09-06 18:38:54 +00:00
Jim Laskey
b3cfa98236 Separate target specifc asm properties from asm printers.
llvm-svn: 30127
2006-09-06 18:35:33 +00:00
Jim Laskey
6b86ef852c Separate target specific asm properties from the asm printers.
llvm-svn: 30126
2006-09-06 18:34:40 +00:00
Rafael Espindola
d9cebd5e48 add the orr instruction
llvm-svn: 30125
2006-09-06 18:03:12 +00:00
Devang Patel
2d6a17a0fa Instead of demangling symbol name by hand, use original name, which was
used to mangle symbol name, directly.

llvm-svn: 30124
2006-09-06 00:45:52 +00:00
Devang Patel
208eaf86a6 Extract target triplet from optimized module.
Untabify.

llvm-svn: 30123
2006-09-06 00:28:22 +00:00
Evan Cheng
82fabe541b Only call isUse/isDef on register operands
llvm-svn: 30122
2006-09-05 20:32:06 +00:00
Chris Lattner
af7a360ac8 Bugfix to work with the two-addr changes that have been made in the tree recently
llvm-svn: 30121
2006-09-05 20:27:32 +00:00
Chris Lattner
6236981486 make this harder
llvm-svn: 30120
2006-09-05 20:27:06 +00:00
Evan Cheng
e7875b655d IsDef can only be accessed / set if operand is a register.
llvm-svn: 30119
2006-09-05 20:20:04 +00:00
Chris Lattner
0fad1515ee Only call isUse/isDef on register operands
llvm-svn: 30118
2006-09-05 20:19:27 +00:00
Chris Lattner
5c74b99a20 Don't call isDef on non-registers
llvm-svn: 30117
2006-09-05 20:02:51 +00:00
Evan Cheng
f041d2de7e Initialize IsDef of all non-register MachineOperand to false.
llvm-svn: 30116
2006-09-05 18:56:02 +00:00
Chris Lattner
f17002a907 Fix Duraid's changes to work when TLI is null. This fixes the failing
lowerinvoke regtests.

llvm-svn: 30115
2006-09-05 17:48:07 +00:00
Chris Lattner
5f36aaa98f Change the default to 0, which means 'default'.
llvm-svn: 30114
2006-09-05 17:39:15 +00:00
Evan Cheng
24ce2a3b27 Fix a few dejagnu failures. e.g. fast-cc-merge-stack-adj.ll
llvm-svn: 30113
2006-09-05 08:32:49 +00:00
Evan Cheng
8ffe1aa35a JIT encoding bug.
llvm-svn: 30112
2006-09-05 05:59:25 +00:00
Chris Lattner
382ed3f1d9 Fix JIT encoding of two-addr instructions.
llvm-svn: 30111
2006-09-05 03:01:52 +00:00
Chris Lattner
fdd2c97fef Update the X86 JIT to make it work with the new two-addr changes. This also
adds assertions that check to make sure every operand gets emitted.

llvm-svn: 30110
2006-09-05 02:52:35 +00:00
Chris Lattner
9cd4e3429e Completely eliminate def&use operands. Now a register operand is EITHER a
def operand or a use operand.

llvm-svn: 30109
2006-09-05 02:31:13 +00:00
Chris Lattner
59a4d8dfcd Fix a long-standing wart in the code generator: two-address instruction lowering
actually *removes* one of the operands, instead of just assigning both operands
the same register.  This make reasoning about instructions unnecessarily complex,
because you need to know if you are before or after register allocation to match
up operand #'s with the target description file.

Changing this also gets rid of a bunch of hacky code in various places.

This patch also includes changes to fold loads into cmp/test instructions in
the X86 backend, along with a significant simplification to the X86 spill
folding code.

llvm-svn: 30108
2006-09-05 02:12:02 +00:00
Andrew Lenharth
a0e57603f0 jmp_bufs are this big on alpha.
llvm-svn: 30107
2006-09-05 00:22:25 +00:00
Bill Wendling
782d1a8b9b First draft of the "Live Interval Analysis" section. This is the "Live
Variable Analysis" pass.

llvm-svn: 30106
2006-09-04 23:35:52 +00:00
Chris Lattner
40e16d9e51 ADd getImm/setImm methods
llvm-svn: 30105
2006-09-04 23:35:22 +00:00
Chris Lattner
35f1acab3a Add some short-hand accessors
llvm-svn: 30104
2006-09-04 23:05:29 +00:00
Rafael Espindola
de18749e1f add support for returning 64bit values
llvm-svn: 30103
2006-09-04 19:05:01 +00:00
Chris Lattner
53644648df Fix some X86 JIT failures. This should really come from TargetJITInfo.
llvm-svn: 30102
2006-09-04 18:48:41 +00:00
Chris Lattner
5eda609986 lli uses LinkAllCodegenComponents, so it needs this. Thanks to
Rafael Esp?ndola for pointing this out

llvm-svn: 30100
2006-09-04 18:34:16 +00:00
Chris Lattner
b26f7cd68a Correct fix for a crasher on functions with live in values
llvm-svn: 30099
2006-09-04 18:27:40 +00:00
Chris Lattner
ae9537991c Hack around a regression I introduced yesterday
llvm-svn: 30098
2006-09-04 18:20:15 +00:00
Duraid Madina
e1bb6d9ff8 forgot this
llvm-svn: 30097
2006-09-04 07:44:11 +00:00
Chris Lattner
8ecba10feb Fix a build problem
llvm-svn: 30096
2006-09-04 06:39:52 +00:00
Duraid Madina
51396ffd3e add setJumpBufSize() and setJumpBufAlignment() to target-lowering.
Call these from your backend to enjoy setjmp/longjmp goodness, see
lib/Target/IA64/IA64ISelLowering.cpp for an example

llvm-svn: 30095
2006-09-04 06:21:35 +00:00
Chris Lattner
5188877ecc Update this to reflect llvm-config usage
llvm-svn: 30094
2006-09-04 06:12:14 +00:00
Chris Lattner
e160871264 Remove some dead makefilery
llvm-svn: 30093
2006-09-04 06:07:12 +00:00
Chris Lattner
80016b7dd3 Use llvm-config to determine what to link in
llvm-svn: 30092
2006-09-04 06:04:03 +00:00