Commit Graph

432 Commits

Author SHA1 Message Date
Chris Lattner 7d4c04c99a We now need to link libscalar to get the switch lowering pass
llvm-svn: 5874
2003-04-23 16:43:02 +00:00
Chris Lattner e695da3f54 Remove unnecessary &*
llvm-svn: 5873
2003-04-23 16:38:00 +00:00
Chris Lattner cebde8d74c Build the appropriate target machine for the input pointer size and endianness
llvm-svn: 5838
2003-04-22 18:10:32 +00:00
Chris Lattner da3bc21076 Add support for allowing the user to extend the GCCLD searchpath
llvm-svn: 5825
2003-04-21 19:53:24 +00:00
Chris Lattner 4b462c0f99 Eliminate useless duplicate libraries
llvm-svn: 5823
2003-04-19 23:07:33 +00:00
Chris Lattner 1d49617c4f 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 602d209078 Add crufty compatibility stuff for ld
llvm-svn: 5813
2003-04-18 23:38:22 +00:00
Chris Lattner 82f626e951 Eliminate some compatibility stuff no longer needed :P
llvm-svn: 5812
2003-04-18 23:38:09 +00:00
Chris Lattner 2b3a5dbacb Use anonymous namespace instead of "static"
Kill using decl

llvm-svn: 5811
2003-04-18 23:01:25 +00:00
Chris Lattner 52c7138d22 Don't support codegen passes in opt
llvm-svn: 5797
2003-04-16 23:02:16 +00:00
Chris Lattner 51bdb6156b Remove codegen libraries to speed up linking opt
llvm-svn: 5796
2003-04-16 22:55:55 +00:00
Chris Lattner a9a988005b Allow the user to disable the internalize pass
llvm-svn: 5792
2003-04-16 21:43:22 +00:00
Chris Lattner f46a02c88e Give verbose error messages if bytecode file cannot be parsed
llvm-svn: 5789
2003-04-16 20:51:36 +00:00
Chris Lattner 12fe9b47cc Improve compatibility with system AS further by allowing input from stdin
llvm-svn: 5780
2003-04-16 17:49:18 +00:00
Chris Lattner 3708870ec8 * 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 1f412aeeb2 Namespacify command line options
llvm-svn: 5778
2003-04-16 17:34:29 +00:00
Chris Lattner 7ff2ce9f0b Minor tweak
llvm-svn: 5758
2003-03-31 17:30:35 +00:00
Chris Lattner 44ffd7c373 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 514c02eb26 * 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 30f40d94cc Rename -no-* to -disable-*
llvm-svn: 5642
2003-02-26 20:00:41 +00:00
Chris Lattner c2be148276 Make printing messages nicer
llvm-svn: 5616
2003-02-24 20:07:54 +00:00
Chris Lattner b8450599f3 Add new -no-verify option
llvm-svn: 5542
2003-02-12 18:45:08 +00:00
Chris Lattner 4dbe59b5ba Add a new -no-output option, useful for -aa-eval tests.
llvm-svn: 5541
2003-02-12 18:43:33 +00:00
Chris Lattner e0e1b0d2a6 Fix build problem on sparc
llvm-svn: 5428
2003-01-29 18:15:34 +00:00
Chris Lattner 0eb5ce94dd 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 892f93730b Allow creating of passes like levelraise which use a targetdata ctor
llvm-svn: 5403
2003-01-22 23:24:11 +00:00
Chris Lattner 208e6e6ff0 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 3fef999fcb Fix didn't fix the race condition in the makefiles
llvm-svn: 5394
2003-01-22 15:41:10 +00:00
Chris Lattner cff8ebe6a3 Fix race condition in Makefile
llvm-svn: 5380
2003-01-21 15:20:50 +00:00
Chris Lattner d232aaaaa9 * 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 757b304077 Rename header
llvm-svn: 5283
2003-01-14 22:57:15 +00:00
Chris Lattner ae2c1b7f15 Link in lots o libraries
llvm-svn: 5269
2003-01-14 21:30:30 +00:00
Chris Lattner 93fbc67720 No longer need scalaropts lib
llvm-svn: 5252
2003-01-13 00:58:18 +00:00
Chris Lattner c864583477 Eliminate direct access to TargetData structure
llvm-svn: 5156
2002-12-28 20:00:00 +00:00
Chris Lattner 7c0f86233f Fix compilation on GCC 3.2
llvm-svn: 5136
2002-12-24 00:44:34 +00:00
Chris Lattner c94e5eeae8 Don't try to buidl jello
llvm-svn: 5135
2002-12-24 00:44:26 +00:00
Chris Lattner 5aa5663353 Fixes to compile with GCC 3.2
llvm-svn: 5134
2002-12-24 00:39:16 +00:00
Chris Lattner 544f4497d1 Jello is now part of LLI
llvm-svn: 5133
2002-12-24 00:14:25 +00:00
Chris Lattner a0d7b084ef 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 5a2f7ec55f X86 target machine is now parameterizable
llvm-svn: 5124
2002-12-23 23:55:01 +00:00
Chris Lattner de4aa4cf8c New files for miscompilation detection
llvm-svn: 5120
2002-12-23 23:50:16 +00:00
Chris Lattner d4e0474dcf Implement the start of the miscompilation detection stuff
llvm-svn: 5119
2002-12-23 23:49:59 +00:00
Brian Gaeke 941945785e 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 c451fb4efd 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 7857616402 Pass command line arguments to main
llvm-svn: 5027
2002-12-13 16:48:57 +00:00
Chris Lattner bf6ad7d307 Add statistic
llvm-svn: 5026
2002-12-13 15:28:42 +00:00
Misha Brukman a9b58a6e0f Made status output debug-only (for testing diffs against lli).
llvm-svn: 5022
2002-12-13 13:15:36 +00:00
Brian Gaeke 4e2c30d894 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 7ccef07786 Implement branches
llvm-svn: 4988
2002-12-13 05:40:28 +00:00
Brian Gaeke 5e91d38ecb 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