Misha Brukman
5981d788f2
* Added the to' keyword, as in
cast <type> <data> to <type>'.
...
* Gave the file a maintainer.
* Cleaned up the layout somewhat.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6556 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-03 00:56:09 +00:00
Misha Brukman
9ced1671a6
Stop ignoring the `cc' field, we actually use it now (e.g. conditional move)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6555 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-03 00:07:17 +00:00
Misha Brukman
0ee48d24fe
Moved FInfo.cpp to lib/Target/Sparc as it is Sparc-specific.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6554 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 23:27:09 +00:00
Chris Lattner
78ddcd7b03
Minor cleanups.
...
This pass should be moved to lib/Target/Sparc since it's sparc specific
It also needs a file comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6553 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 22:57:41 +00:00
Chris Lattner
9efc4d6aaa
Remove usage of noncopyable classes to clean up doxygen output.
...
In particular these classes are the last that link the noncopyable classes
with the hash_map, vector, and list classes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6552 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 22:45:07 +00:00
Chris Lattner
9452b0797a
Remove NonCopyable base class to clean up doxygen output
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6551 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 22:07:37 +00:00
Chris Lattner
747a044550
Add #include
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6550 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 22:05:13 +00:00
Misha Brukman
e085a9d279
Added MOVR (move int reg on register condition), aka comparison with zero.
...
None of these instructions are actually used in the Sparc backend, so no changes
were required in the instruction selector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6549 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 21:16:54 +00:00
Misha Brukman
eecdb661ec
SparcInstr.def: added 'r' and 'i' versions of MOV(F)cc instructions
...
SparcInstrSelection.cpp:
* Fixed opcodes to return correct 'i' version since the two functions are each
only used in one place.
* Changed name of function to have an 'i' in the name to signify that they each
return an immediate form of the opcode.
* Added a warning if either of the functions is ever used in a context which
requires a register-version opcode.
SparcV9_F4.td: fixed class F4_3, added F4_4 and notes that F4_{1,2} need fixing
SparcV9.td: added the MOV(F)cc instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6548 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 20:55:14 +00:00
Misha Brukman
e6aa9e30b1
Removed a useless ofstream.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6547 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 20:49:09 +00:00
Misha Brukman
26343a5642
* Added casts to/from floating-point to integers.
...
* Changed // comments to #ifdef 0 to maintain syntax highlighting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6546 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 19:08:37 +00:00
Guochun Shi
099b064a46
compiled with the new SchedGraphCommon
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6545 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 17:48:56 +00:00
Chris Lattner
b84388937c
* Make assertion message useful
...
* Kill dead conditional
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6544 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 17:42:47 +00:00
Chris Lattner
1bafd29e0e
Second testcase identified by Joel
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6543 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 17:31:24 +00:00
Chris Lattner
bf44ecccdb
Fix bug: Linker/2003-06-02-TypeResolveProblem.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6542 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 17:25:46 +00:00
Chris Lattner
5e1803548d
New testcase identified by Joel
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6541 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 17:07:42 +00:00
Chris Lattner
707af6efec
Add support for C++ tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6540 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 05:49:11 +00:00
Chris Lattner
920bd79f34
Be more robust in the face of undefined behavior.
...
Fixes bug: BasicAA/2003-06-01-AliasCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6538 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 05:42:39 +00:00
Chris Lattner
4bf00c10d5
No need to print out bytecode :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6537 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 05:42:16 +00:00
Misha Brukman
eaaf8ad3cc
Clean up after merging in SparcEmitter.cpp; branches and return work again.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6536 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 05:24:46 +00:00
Chris Lattner
4954f04914
Minor cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6535 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 05:21:06 +00:00
Chris Lattner
2e33430a0d
New testcase, reduced from 300.twolf by bugpoint
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6534 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:58:23 +00:00
Chris Lattner
b417c795d2
Remove stupid thinko that was preventing bugpoint from working
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6533 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:54:29 +00:00
Chris Lattner
24271cf8d7
Give better information about how the passes crash
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6532 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:54:16 +00:00
Misha Brukman
bc80b2249a
Eliminated a compiler warning due to casting to a different-sized datatype.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6531 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:13:58 +00:00
Misha Brukman
f86aaa8eb7
Merged in tools/lli/JIT/SparcEmitter.cpp, coupled with the JITResolver taken
...
from lib/Target/X86/X86CodeEmitter.cpp .
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6530 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:12:39 +00:00
Misha Brukman
53a7ba851d
Remove spurious assert()
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6529 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 04:10:41 +00:00
Misha Brukman
cd60313915
Renamed MachineCodeEmitter.cpp -> X86CodeEmitter.cpp as it conflicts with the
...
target-independent lib/CodeGen/MachineCodeEmitter.cpp; preserved CVS history.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6528 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 03:28:00 +00:00
Misha Brukman
906f5fa5c8
* Removed SparcEmitter.cpp; rolled into lib/Target/Sparc/SparcV9CodeEmitter.cpp
...
* No more createX86Emitter() vs. createSparcEmitter() -- there can be only one
* As a result, the memory management semantics must be handled according to
platform -- the parameters to mmap() are particularly sensitive to the host
architecture.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6527 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 03:23:16 +00:00
Chris Lattner
cf135cbc77
Fix bug: CBackend/2003-06-01-NullPointerType.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6526 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 03:10:53 +00:00
Chris Lattner
71799cda17
Testcase distilled from 255.vortex
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6525 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 03:07:54 +00:00
Brian Gaeke
c3eaa89933
Deal with %lo/%lm/%hm/%hh flags in getMachineOpValue().
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6522 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 02:13:26 +00:00
Chris Lattner
d50cbf00e3
Old testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6521 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 02:13:02 +00:00
Brian Gaeke
24a26e58ef
The flag modifications weren't picking up the old values of the
...
flags before. Save them in a temporary variable, then restore them from the
temporary after creating the new constant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6520 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 02:10:31 +00:00
Chris Lattner
d5af63f325
Remove obsolete code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6518 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-02 00:09:00 +00:00
Chris Lattner
bba1b6df9a
Move target specific code to target files. The new MachineCodeEmitter
...
class is actually target independent!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6517 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 23:24:36 +00:00
Chris Lattner
04b0b309c4
Move X86 specific code out of the JIT into the X86 backend
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6516 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 23:23:50 +00:00
Chris Lattner
efc84a4082
Changes to be compatible with MachineCodeEmitter.h
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6515 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 23:22:11 +00:00
Chris Lattner
f2e364ad3a
Hack up MachineCodeEmitter to actually be target independent.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6514 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 23:20:02 +00:00
Brian Gaeke
63b99f91c9
Fix induction variable name clash in for loops, in finishFunction().
...
Modify new MachineOperand so that its flags match the old MachineOperand's
flags, for the flags that matter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6513 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 22:08:29 +00:00
Brian Gaeke
76e3dc798b
Make the .inc file depend on $(TBLGEN), so that changes to TableGen followed
...
by a re-link of TableGen will notify Make to rebuild the .inc file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6512 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 04:52:51 +00:00
Chris Lattner
26c6915539
Don't print out unique identifier for opaque types
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6511 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:45:51 +00:00
Chris Lattner
20772547c5
* Implement cast (long|ulong) to bool
...
* Fix cast of (short|ushort|int|uint) to bool to work right
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6510 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:38:24 +00:00
Chris Lattner
6c8125fa56
Add RR forms of test instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6509 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:37:46 +00:00
Chris Lattner
af2f438c2c
Add tests for cast of long to bool
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6508 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:37:25 +00:00
Chris Lattner
d13bd22fbe
Fix a bug with casts to bool. This fixes testcase UnitTests/2003-05-31-CastToBool.c
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6507 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:36:51 +00:00
Chris Lattner
074d84c746
Implement xform: (X != 0) -> (bool)X
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6506 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:35:25 +00:00
Chris Lattner
4d6404f762
New testcases
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6505 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 03:34:53 +00:00
Anand Shukla
55afc33882
Add map info for arguments to call (copies)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6503 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 02:48:23 +00:00
Anand Shukla
619754fb18
Added the #(internal functions) to output
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6502 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-01 02:40:49 +00:00