Commit Graph

4589 Commits

Author SHA1 Message Date
Chris Lattner f03132f014 Print another class of instructions correctly, giving us: xorl EDX, EDX
for example.

llvm-svn: 4793
2002-11-21 00:30:01 +00:00
Misha Brukman 95e6287734 Booleans are types too. And they get stored in bytes. And InstructionSelection
doesn't assert fail. And everyone's happy. Yay!

llvm-svn: 4792
2002-11-21 00:25:56 +00:00
Chris Lattner 185972c7e6 Checkin testcases for bugpoint
llvm-svn: 4791
2002-11-20 22:30:02 +00:00
Chris Lattner 12caa7a9cf Build bugpoint
llvm-svn: 4790
2002-11-20 22:28:18 +00:00
Chris Lattner 73a6bdd958 Initial checkin of bugpoint
llvm-svn: 4789
2002-11-20 22:28:10 +00:00
Chris Lattner e4dbb1af42 Initial checkin of Module cloning support stuff
llvm-svn: 4788
2002-11-20 20:47:41 +00:00
Chris Lattner a35d7412c6 Cloning stuff doesn't modify the source module
llvm-svn: 4787
2002-11-20 20:22:58 +00:00
Chris Lattner c4841a7738 X86 target builds fine now
llvm-svn: 4786
2002-11-20 20:17:03 +00:00
Chris Lattner 8016a16ed0 Fix symbol table problem
llvm-svn: 4785
2002-11-20 19:32:43 +00:00
Misha Brukman 53d2de923a Add definitions for function headers from MRegisterInfo.h:
Some functions are in X86RegisterInfo.cpp, others, because of the data they
need, are in X86RegisterClasses.cpp, which also defines some register classes:
byte, short, and int.

llvm-svn: 4784
2002-11-20 18:59:43 +00:00
Misha Brukman 6e5d493e0f Check not only for MO_VirtualRegister, but MO_MachineRegister as well when
printing out assembly. After all, we want the real thing too.

llvm-svn: 4783
2002-11-20 18:56:41 +00:00
Misha Brukman d5b111a10c Initialize the SSARegMap.
llvm-svn: 4782
2002-11-20 18:55:27 +00:00
Misha Brukman 45f6b8410e MRegisterInfo.h - Added prototypes for functions we need to map a register to
an appropriate TargetRegisterClass, also adds TargetRegisterClass definition.
TargetMachine.h - speling.

llvm-svn: 4781
2002-11-20 18:54:53 +00:00
Chris Lattner 55d5f15a40 Don't build X86 target yet
llvm-svn: 4780
2002-11-20 18:37:37 +00:00
Chris Lattner 98cf1f5d64 - Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.

llvm-svn: 4779
2002-11-20 18:36:02 +00:00
Chris Lattner 7c6d9d9eac Fix minor bugs
llvm-svn: 4778
2002-11-20 18:32:31 +00:00
Chris Lattner b251c3d727 Eliminate the concept of a deferred symbol table. The optimization really isn't,
and it causes obscure bugs to show up in passes.

llvm-svn: 4777
2002-11-20 18:07:48 +00:00
Misha Brukman eaaceb1210 Add mapping in MachineFunction from SSA regs to Register Classes. Also,
uncovered a bug where registers were not being put in a map if they were not
found...

llvm-svn: 4776
2002-11-20 00:58:23 +00:00
Misha Brukman ade1143692 Sigh. Fixed some speling.
llvm-svn: 4775
2002-11-20 00:56:42 +00:00
Misha Brukman a5381b4932 SSARegMap -- the mapping between SSARegisters and their RegisterClasses, which
imply types of SSA Registers. This is on a per-function basis, so the
MachineFunction contains the SSARegMap, and has accessor functions to it.

llvm-svn: 4774
2002-11-20 00:53:10 +00:00
Misha Brukman 310afc5f8c Thanks to the R8, R16, and R32 macros, I can now deal with registers that
belong to different register classes easier.

llvm-svn: 4773
2002-11-20 00:47:40 +00:00
Chris Lattner 84dd0f4767 Remove unneccesary #include
llvm-svn: 4772
2002-11-19 23:12:53 +00:00
Chris Lattner fb311d203a Implement the CloneFunction function
llvm-svn: 4771
2002-11-19 23:12:22 +00:00
Chris Lattner c362618f2a Minor changes to cloning interface
llvm-svn: 4770
2002-11-19 22:54:01 +00:00
Chris Lattner 8bce9886c3 Fix two fixmes: integrate with inlining, and document
llvm-svn: 4769
2002-11-19 22:04:49 +00:00
Chris Lattner 526c368ea2 Add support for bugpoint
llvm-svn: 4768
2002-11-19 21:57:18 +00:00
Chris Lattner 3aecfe8f61 Extend function cloning interface to support inlining
llvm-svn: 4767
2002-11-19 21:54:38 +00:00
Chris Lattner b1120055b9 Rework inline pass to use cloning infrastructure to do the dirty work
llvm-svn: 4766
2002-11-19 21:54:07 +00:00
Chris Lattner 891bbab848 This file is supersumed by Utils/Cloning.h
llvm-svn: 4765
2002-11-19 21:00:33 +00:00
Chris Lattner 1666751257 Start using the new function cloning header
llvm-svn: 4764
2002-11-19 20:59:41 +00:00
Chris Lattner 36d074aac6 Merge cloning and inlining utilities
llvm-svn: 4763
2002-11-19 20:58:38 +00:00
Chris Lattner d06467db62 Move MutatStructTypes.h out of IPO
llvm-svn: 4762
2002-11-19 20:49:40 +00:00
Chris Lattner 9c1e935711 Move inlining pass to IPO.h
llvm-svn: 4761
2002-11-19 20:43:24 +00:00
Chris Lattner fb8ca4a899 Rename CloneFunction.h to Cloning.h
llvm-svn: 4760
2002-11-19 20:08:24 +00:00
Chris Lattner 58f9002b4a Move the function extractor pass from tools/extract into lib/Xform/IPO
llvm-svn: 4759
2002-11-19 18:42:59 +00:00
Chris Lattner b2e46c0714 Add a new Module::getNamedFunction method
llvm-svn: 4758
2002-11-19 18:41:44 +00:00
Chris Lattner 831f94c5a4 Ignore options that are ""
llvm-svn: 4757
2002-11-19 17:10:14 +00:00
Chris Lattner 6d192f5bb4 Remove extra target.a entry
llvm-svn: 4756
2002-11-19 16:59:41 +00:00
Brian Gaeke a648bc6674 Brian Gaeke says:
lib/Target/X86/InstSelectSimple.cpp: Add a little something to
 visitBranchInst which supports conditional branches.
lib/Target/X86/X86InstrInfo.def: Add defs of JNE, JE, CMPri8

llvm-svn: 4755
2002-11-19 09:08:47 +00:00
Nick Hildenbrandt e7225c5d3c *** empty log message ***
llvm-svn: 4754
2002-11-18 22:21:52 +00:00
Chris Lattner f96a218932 Add peak memory usage measurement capability
Add (currently disabled) faciility to try to filter out pool allocation overhead from memory usage stats

llvm-svn: 4753
2002-11-18 21:47:09 +00:00
Chris Lattner a3ddb9b5ce Add facility to compute peak memory usage
llvm-svn: 4752
2002-11-18 21:45:55 +00:00
Chris Lattner 2a254b6aa6 Inline DSTypeRec stuff into DSNode
llvm-svn: 4751
2002-11-18 21:45:30 +00:00
Chris Lattner 6d6b48b005 Inline DSTypeRec into DSNode
llvm-svn: 4750
2002-11-18 21:45:07 +00:00
Chris Lattner 79d943eb67 Add peak memory usage measurement stuff
Add structure padding optimizations

llvm-svn: 4749
2002-11-18 21:44:46 +00:00
Chris Lattner 63a9e5c068 Add peak memory usage support
llvm-svn: 4748
2002-11-18 21:44:19 +00:00
Chris Lattner 77b80616b0 Add stats
llvm-svn: 4747
2002-11-18 21:42:45 +00:00
Chris Lattner 11dbd0ff35 Templatize graph traits and iterator to work with const and non-const clients
llvm-svn: 4746
2002-11-18 21:42:19 +00:00
Nick Hildenbrandt cdf2a1811e *** empty log message ***
llvm-svn: 4745
2002-11-18 20:55:50 +00:00
Chris Lattner ee285c1df9 Add helper method
llvm-svn: 4744
2002-11-18 06:57:05 +00:00