Commit Graph

3997 Commits

Author SHA1 Message Date
Chris Lattner
9274d2d21a Do not consider any types that exist in the global symbol table!
llvm-svn: 8084
2003-08-23 21:32:24 +00:00
Chris Lattner
c94a7e8904 Fix bug: Linker/2003-08-23-RecursiveOpaqueTypeResolve.ll
llvm-svn: 8083
2003-08-23 21:25:54 +00:00
Chris Lattner
f063146af6 Implement Linker/2003-08-23-GlobalVarLinking.ll, which should fix 176.gcc
llvm-svn: 8080
2003-08-23 20:31:10 +00:00
Chris Lattner
4d5a165218 Fix bug: TailDup/2003-08-23-InvalidatedPointers.ll
llvm-svn: 8078
2003-08-23 20:08:30 +00:00
Chris Lattner
705fb5f473 Fix bug: FunctionResolve/2003-08-23-ArgumentWarning.ll
llvm-svn: 8076
2003-08-23 20:03:05 +00:00
Chris Lattner
b7d216cd2f Initial checkin of ValueHolder helper
llvm-svn: 8072
2003-08-23 19:43:16 +00:00
Chris Lattner
d6bf205b7d Fix typeo
llvm-svn: 8059
2003-08-22 20:16:48 +00:00
Chris Lattner
fafb0d5a3c The process of linking types can cause their addresses to become invalid. For this reason, we must use TypeHandles!
llvm-svn: 8057
2003-08-22 19:12:55 +00:00
Chris Lattner
b382d33401 Implement Linker/2003-08-20-OpaqueTypeResolve.ll
Hopefully this will fix the 176.gcc spec test as well.

llvm-svn: 8051
2003-08-22 06:07:12 +00:00
Chris Lattner
9a709fd181 Accept double quoted strings everwhere we accept a %ABC variable name.
This introduces one more innoculous shift-reduce conflict, but will REALLY
help the type names generated by the C++ frontend, which wants to use all
kinds of crazy stuff.

llvm-svn: 8050
2003-08-22 05:42:10 +00:00
Chris Lattner
7cdcd38942 If an "LLVM name" has wierd characters in it, print it out in double quotes instead of prefixing it with %
llvm-svn: 8049
2003-08-22 05:40:38 +00:00
Misha Brukman
cda7f97dbb The word dependent' has no a'.
llvm-svn: 8030
2003-08-21 22:14:26 +00:00
Chris Lattner
491f944115 Fix spello
llvm-svn: 8029
2003-08-21 22:05:57 +00:00
Chris Lattner
d9a212abca Minor cleanups: wrap at 80 lines. Convert file comment to doxygen format and
llvm style

llvm-svn: 8024
2003-08-21 21:32:12 +00:00
John Criswell
8bc390da1b The JIT now passes the environment pointer to the main() function when it
starts a program.  This allows the GNU env program to compile and JIT under
LLVM.

llvm-svn: 8022
2003-08-21 21:12:30 +00:00
Chris Lattner
ce3c869e38 Change all #include'd files to be :: rules instead of : rules
llvm-svn: 8019
2003-08-21 20:37:17 +00:00
Brian Gaeke
3c178814f5 Reoptimizer has moved to reopt cvs module.
llvm-svn: 8018
2003-08-21 20:32:04 +00:00
Chris Lattner
fb677f7e87 Implement Assembler/2003-08-21-ConstantExprCast-Fold.llx
llvm-svn: 8015
2003-08-21 19:45:55 +00:00
Chris Lattner
cd9ac7b0f7 Unless we CANNOT merge the arguments, do so
llvm-svn: 7999
2003-08-20 23:50:38 +00:00
Chris Lattner
6c9f00c920 Implement testcase: Assembler/2003-08-20-ConstantExprGEP-Fold.llx
llvm-svn: 7983
2003-08-20 16:11:27 +00:00
Chris Lattner
7190bb52f3 Fix grammar, add comment
llvm-svn: 7967
2003-08-18 22:54:06 +00:00
Chris Lattner
9f1ec93145 Do not even attempt to compute dominator information for unreachable blocks
llvm-svn: 7963
2003-08-18 22:11:16 +00:00
Chris Lattner
785885a8c0 no really, implement it!
llvm-svn: 7955
2003-08-18 17:33:15 +00:00
Chris Lattner
d737232814 Add support for casting any pointer to any integer type
llvm-svn: 7953
2003-08-18 17:23:40 +00:00
Chris Lattner
9fed232059 Fix linking bug in xboard
llvm-svn: 7952
2003-08-18 16:54:48 +00:00
Chris Lattner
f54b131a49 Add support for the sig(set|long)jmp intrinsics
llvm-svn: 7951
2003-08-18 16:06:09 +00:00
Chris Lattner
2c6666efc6 Add intrinsics for the llvm.sig(set|long)jmp functions
llvm-svn: 7949
2003-08-18 15:41:24 +00:00
Misha Brukman
56f7db4178 Spell `necessary' correctly.
llvm-svn: 7944
2003-08-18 14:43:39 +00:00
Chris Lattner
c5e9b1f3cd Fix ABI issue: Longs really do need to be only 4 byte aligned on X86.
This bug caused miscompilation of programs using 'struct stat', but only if
compiled with support for 64-bit filesystems.  This could in theory effect
other things, but only if the LLVM code shared data structures with native code.

llvm-svn: 7928
2003-08-17 23:20:40 +00:00
Chris Lattner
d34f5bd750 Fix the bug that broke the nightly tester in McCat/18-imp last night. :(
llvm-svn: 7925
2003-08-17 21:47:33 +00:00
Chris Lattner
382a3a3708 Implement folding of switch instructions.
Implements SimplifyCFG/2003-08-17-FoldSwitch.ll

llvm-svn: 7923
2003-08-17 20:21:14 +00:00
Chris Lattner
1f5afd2a1c Fix bug: SimplifyCFG/2003-08-17-BranchFoldOrdering.ll
llvm-svn: 7921
2003-08-17 19:41:53 +00:00
Chris Lattner
17f985bfa4 The fixme is irrelevant: if that happens, the LLVM bytecode is malformed.
This fixes testcase: SimplifyCFG/2003-08-17-BranchFold.ll

llvm-svn: 7919
2003-08-17 19:34:55 +00:00
Chris Lattner
972c03e264 Fix bug: Jello/2003-08-15-AllocaAssertion.ll
llvm-svn: 7916
2003-08-17 18:01:15 +00:00
Chris Lattner
0674b75f99 Fix bug: LoopPreheaders/2003-08-15-PreheadersFail.ll
llvm-svn: 7915
2003-08-16 20:57:16 +00:00
Brian Gaeke
705b78146e Rename -emitmaps to -enable-maps
llvm-svn: 7913
2003-08-16 00:23:16 +00:00
Brian Gaeke
797d0f0aeb Fix typo in comment
llvm-svn: 7906
2003-08-15 21:19:25 +00:00
Brian Gaeke
294589d7f6 lib/Support/CommandLine.cpp:
Many changes suggested by Chris. It's okay, I'll recover from the emotional
damage...maybe someday. :-)

Collapse ParseCStringVector into ParseStringVector.  Comment it.
Make it take a const input.
Use std::string::npos instead of -1 (what a mouthful!)
Make ParseEnvironmentOptions take const inputs.
Check its args at the very beginning.
Strdup all the contents of newArgv and free them all at the end.

include/Support/CommandLine.h:
Constify progName and envVar arguments to ParseEnvironmentOptions().

llvm-svn: 7905
2003-08-15 21:05:57 +00:00
Misha Brukman
cddc1c4f9c Now that the JIT memory manager allocates as many bytes as necessary rather than
rounding up to a page, we need to request (num instrs * 4) bytes. However, I
think that 64 bytes is overkill for the stub function.

llvm-svn: 7888
2003-08-15 18:03:06 +00:00
Misha Brukman
16cd96bf4a Fix register and parameter numbers in saving double FP registers.
llvm-svn: 7884
2003-08-15 16:15:28 +00:00
Chris Lattner
b2ff3ba7df Remove uses of the NonCopyable class, to make the doxygen output look better
llvm-svn: 7880
2003-08-15 05:20:06 +00:00
Chris Lattner
0427dd4f4f rename selection library to selectiondag
llvm-svn: 7878
2003-08-15 04:56:09 +00:00
Chris Lattner
d5ff87cb9b rename selection directory and library to SelectionDAG
llvm-svn: 7877
2003-08-15 04:55:22 +00:00
Chris Lattner
d76432ee48 Add a bunch of new node types, etc
llvm-svn: 7875
2003-08-15 04:53:16 +00:00
Chris Lattner
fb986e7b44 Adjust to new API, add expandCall stub
llvm-svn: 7873
2003-08-15 04:51:59 +00:00
Chris Lattner
8d79ae7383 Add support for unconditional branches and for emitting JE instructions
llvm-svn: 7872
2003-08-15 04:50:49 +00:00
Chris Lattner
250f26f066 Add a bunch of new node types, including a new Void dummy register class
llvm-svn: 7870
2003-08-15 04:35:14 +00:00
Misha Brukman
a45f4930ed * Must save FP registers when calling CompilationCallback(), because FP
registers are global, are NOT windowed, and hence can be clobbered!
* Removed unused register shorthand notations
* Fixed and cleaned up comments in inline assembly

llvm-svn: 7853
2003-08-15 00:26:50 +00:00
Brian Gaeke
1fea9addaa Add support for reading command line arguments from an environment variable.
llvm-svn: 7851
2003-08-14 22:00:59 +00:00
Vikram S. Adve
39ff8beb24 Improvement to the previous fix: branch following a delay slot of
another delayed instr. would cause the later sanity-check (assertion)
in PhyRegAlloc.cpp to fail, even though there is really no error.

llvm-svn: 7848
2003-08-14 20:45:56 +00:00