427 Commits

Author SHA1 Message Date
Chris Lattner
8b99be746e Add first support for linking in .a files correctly and minimally, like a real linker does
llvm-svn: 5822
2003-04-19 22:44:38 +00:00
Chris Lattner
f53dee47b8 Add crufty compatibility stuff for ld
llvm-svn: 5813
2003-04-18 23:38:22 +00:00
Chris Lattner
b53f5d3a9f Eliminate some compatibility stuff no longer needed :P
llvm-svn: 5812
2003-04-18 23:38:09 +00:00
Chris Lattner
60bb70a682 Use anonymous namespace instead of "static"
Kill using decl

llvm-svn: 5811
2003-04-18 23:01:25 +00:00
Chris Lattner
dd3d3438c1 Don't support codegen passes in opt
llvm-svn: 5797
2003-04-16 23:02:16 +00:00
Chris Lattner
6a3b90dfad Remove codegen libraries to speed up linking opt
llvm-svn: 5796
2003-04-16 22:55:55 +00:00
Chris Lattner
4fa3b88238 Allow the user to disable the internalize pass
llvm-svn: 5792
2003-04-16 21:43:22 +00:00
Chris Lattner
fa428e3417 Give verbose error messages if bytecode file cannot be parsed
llvm-svn: 5789
2003-04-16 20:51:36 +00:00
Chris Lattner
9d614bf2d1 Improve compatibility with system AS further by allowing input from stdin
llvm-svn: 5780
2003-04-16 17:49:18 +00:00
Chris Lattner
951662218c * Get rid of using declaration
* Add two compatibility options to work better with new GCC frontend

llvm-svn: 5779
2003-04-16 17:41:08 +00:00
Chris Lattner
7c29feaeb7 Namespacify command line options
llvm-svn: 5778
2003-04-16 17:34:29 +00:00
Chris Lattner
6024ecfc43 Minor tweak
llvm-svn: 5758
2003-03-31 17:30:35 +00:00
Chris Lattner
03df18f1c2 Make sure that intermediate code is verifier clean to avoid wierd problems.
llvm-svn: 5723
2003-03-07 18:17:13 +00:00
Chris Lattner
b58da8ab04 * Reduce the number of useless bytecode files produced by bugpoint.
- This also speeds it up as the bytecode writer isn't terribly fast.
* Add a new cleanup pass after everything else to run -funcresolve -globaldce

llvm-svn: 5668
2003-02-28 16:13:20 +00:00
Chris Lattner
ea424f3aff Rename -no-* to -disable-*
llvm-svn: 5642
2003-02-26 20:00:41 +00:00
Chris Lattner
f170a0d80f Make printing messages nicer
llvm-svn: 5616
2003-02-24 20:07:54 +00:00
Chris Lattner
8b72239415 Add new -no-verify option
llvm-svn: 5542
2003-02-12 18:45:08 +00:00
Chris Lattner
0005ea2a7f Add a new -no-output option, useful for -aa-eval tests.
llvm-svn: 5541
2003-02-12 18:43:33 +00:00
Chris Lattner
649a63bd45 Fix build problem on sparc
llvm-svn: 5428
2003-01-29 18:15:34 +00:00
Chris Lattner
e6f7b214de Make bugpoint *much* more powerful, giving it the capability to delete instructions
out of a large function to reduce it.

llvm-svn: 5408
2003-01-23 02:48:33 +00:00
Chris Lattner
e3b4ef8e1a Allow creating of passes like levelraise which use a targetdata ctor
llvm-svn: 5403
2003-01-22 23:24:11 +00:00
Chris Lattner
598270f39d link with static versions of some libs to avoid having to pull in all of ipo/ipa and datastructure at all
llvm-svn: 5402
2003-01-22 22:14:04 +00:00
Chris Lattner
0d35f25ed7 Fix didn't fix the race condition in the makefiles
llvm-svn: 5394
2003-01-22 15:41:10 +00:00
Chris Lattner
7964483787 Fix race condition in Makefile
llvm-svn: 5380
2003-01-21 15:20:50 +00:00
Chris Lattner
abe1b658e7 * Prune down library list. In particular, llc doesn't need all of IPO, and none of data structure and IPA completely!
* Do not keep symbols by default!

llvm-svn: 5375
2003-01-19 21:55:43 +00:00
Chris Lattner
bdb65e864f Rename header
llvm-svn: 5283
2003-01-14 22:57:15 +00:00
Chris Lattner
c582c69c7a Link in lots o libraries
llvm-svn: 5269
2003-01-14 21:30:30 +00:00
Chris Lattner
cffd554b7f No longer need scalaropts lib
llvm-svn: 5252
2003-01-13 00:58:18 +00:00
Chris Lattner
4b2c56d87f Eliminate direct access to TargetData structure
llvm-svn: 5156
2002-12-28 20:00:00 +00:00
Chris Lattner
1214348847 Fix compilation on GCC 3.2
llvm-svn: 5136
2002-12-24 00:44:34 +00:00
Chris Lattner
1897b07db2 Don't try to buidl jello
llvm-svn: 5135
2002-12-24 00:44:26 +00:00
Chris Lattner
2ee368e312 Fixes to compile with GCC 3.2
llvm-svn: 5134
2002-12-24 00:39:16 +00:00
Chris Lattner
e2857c2d41 Jello is now part of LLI
llvm-svn: 5133
2002-12-24 00:14:25 +00:00
Chris Lattner
42057e4d2a Substantial changes to refactor LLI to incorporate both the Jello JIT and
the traditional LLI interpreter

llvm-svn: 5125
2002-12-23 23:59:41 +00:00
Chris Lattner
1bb5148632 X86 target machine is now parameterizable
llvm-svn: 5124
2002-12-23 23:55:01 +00:00
Chris Lattner
2af84f79e3 New files for miscompilation detection
llvm-svn: 5120
2002-12-23 23:50:16 +00:00
Chris Lattner
6788e95757 Implement the start of the miscompilation detection stuff
llvm-svn: 5119
2002-12-23 23:49:59 +00:00
Brian Gaeke
8f7c7a40c5 brg
Add statistic for number of bytes of data area initialized.
We used this statistic in collecting data for the paper, but I forgot
to commit it.

llvm-svn: 5112
2002-12-22 18:53:23 +00:00
Chris Lattner
9a6368cb87 Make stuff compiled with gccld not dump into the debugger if there's a problem
llvm-svn: 5028
2002-12-14 21:28:32 +00:00
Chris Lattner
3aecb5fcd6 Pass command line arguments to main
llvm-svn: 5027
2002-12-13 16:48:57 +00:00
Chris Lattner
ab38002b81 Add statistic
llvm-svn: 5026
2002-12-13 15:28:42 +00:00
Misha Brukman
0550d7ead0 Made status output debug-only (for testing diffs against lli).
llvm-svn: 5022
2002-12-13 13:15:36 +00:00
Brian Gaeke
641c6fa60a brg
InstSelectSimple.cpp: Add stub implementation of visitFreeInst.
 Add comments that mention how we are failing to implement malloc/free.
 Add initial implementation of visitAllocaInst.

X86TargetMachine.cpp: Include llvm/Transforms/Scalar.h.
 Add LowerAllocations pass before instruction selection.

jello/Makefile: Add scalaropts.a.

llvm-svn: 4994
2002-12-13 06:46:31 +00:00
Chris Lattner
73433b07b9 Implement branches
llvm-svn: 4988
2002-12-13 05:40:28 +00:00
Brian Gaeke
9b38597288 This checkin is brought to you by the brian gaeke allnighter fund.
(lib/Target/X86) InstSelectSimple.cpp:
 Include llvm/DerivedTypes.h and iostream.
 Refactor visitMul out into a wrapper around doMultiply(), so that we
  can do multiplications on temporary values when we are doing
  getelementptrs.
 Refactor part of getReg out into makeAnotherReg, so that we can create
  registers willy-nilly to hold temporary values, when we are doing
  getelementptrs.
 Add stub implementations of visitMallocInst and visitAllocaInst.
 Add initial implementation of visitGetElementPtrInst.
 In copyConstantToRegister:
  We throw a *lot* of our asserts here. So, when we want to throw an
   assert, print out to stderr whatever expr or whatever constant made
   us barf.
  Support copying ConstantPointerNull to register, using a move immediate
   of zero.
 Rename FLDr4 and FLDr8 to FLDr32 and FLDr64, so that they match the meanings
  of the numbers in the other instruction names. All uses modified.
 Teach visitCallInst to extract byte- and short-class return values
  from subregs of EAX.  Add a FIXME note about how we would do it for
  float-class return values.
 Add a FIXME note about how we would cast float to int and back.

X86InstrInfo.def:
 Rename FLDr4 and FLDr8 to FLDr32 and FLDr64, so that they match the meanings
  of the numbers in the other instruction names. All uses modified.

(tools/jello) GlobalVars.cpp:
 Include iostream.
 If we have to emit a floating-point constant to memory, gamble and use
  the same method as for ints.
 If we have to emit a ConstantPointerNull to memory, try using a "void *"
  and "NULL".
 Otherwise, if we are going to throw an assert, print out whatever constant
  made us barf, first.

llvm-svn: 4973
2002-12-12 15:33:40 +00:00
Misha Brukman
46aa1be828 ipa.a only needs to be mentioned once, and spaces should be used instead of
tabs for readability.

llvm-svn: 4970
2002-12-12 05:29:32 +00:00
Vikram S. Adve
03e6fa5804 Fix link errors due to new IPModRef pass.
llvm-svn: 4960
2002-12-09 05:53:11 +00:00
Vikram S. Adve
4c20f7764d Repeat ipa.a. Since IPModRef is currently only used in analysis.o,
it was causing linking errors.

llvm-svn: 4959
2002-12-09 04:46:25 +00:00
Chris Lattner
f525e2f95e Add support to count the number of dynamic instructions executed by LLI
llvm-svn: 4955
2002-12-08 05:51:08 +00:00
Chris Lattner
2c4687b0ed Only build jello when compiling on X86
llvm-svn: 4938
2002-12-06 03:53:40 +00:00