Chris Lattner
d6786b5f59
Prune #includes
...
llvm-svn: 4277
2002-10-25 02:01:33 +00:00
Chris Lattner
1e5e3f071e
Fix misspelling
...
llvm-svn: 4276
2002-10-25 01:43:26 +00:00
Chris Lattner
48164f4398
* Remove unneccesary #includes
...
* Fix typeo in the (unused) MachineInstrInfo::isArith method
llvm-svn: 4275
2002-10-24 22:34:41 +00:00
Nick Hildenbrandt
1ab1117cef
Updated
...
llvm-svn: 4274
2002-10-24 20:54:49 +00:00
Nick Hildenbrandt
e06994a6a1
Fixed it
...
llvm-svn: 4273
2002-10-23 21:48:52 +00:00
Nick Hildenbrandt
a5d49ce41e
Added Burg
...
llvm-svn: 4272
2002-10-23 20:50:22 +00:00
Nick Hildenbrandt
181dbf0851
Malloc prototyping now works even if the original file had its own prototype for malloc
...
llvm-svn: 4271
2002-10-23 18:59:40 +00:00
Chris Lattner
e97144120d
Tell PassManager that this pass does not invalidate the CFG so that dominator
...
information and Loop info will not have to be recomputed after this runs.
llvm-svn: 4269
2002-10-23 03:30:47 +00:00
Chris Lattner
42c66c4887
Minor cleanups
...
Make sure to have a pass name
llvm-svn: 4268
2002-10-23 01:12:01 +00:00
Chris Lattner
45bb78fc06
Minor cleanups
...
llvm-svn: 4267
2002-10-23 01:11:51 +00:00
Chris Lattner
49f4242d2b
- Fix a really nasty bug in the bytecode reader that caused it to fail
...
reading bytecode files with > 255 types in them, but only when optimization
is enabled. This was caused by GCC shrinking an enum to a single byte
instead of a whole word.
llvm-svn: 4266
2002-10-23 00:51:54 +00:00
Chris Lattner
95fcefcb7e
Wow, for some reason, when reading bytecode from stdin, we were only reading
...
4 bytes at a time. Change this to read blocks of 4k
llvm-svn: 4265
2002-10-22 23:55:24 +00:00
Chris Lattner
cf388bb247
Disable optimization that doesn't apply to C
...
llvm-svn: 4264
2002-10-22 23:35:28 +00:00
Chris Lattner
5ae3bd630d
Ensure definate initialization
...
llvm-svn: 4263
2002-10-22 23:34:11 +00:00
Chris Lattner
d3fcf42efc
Fix misspelled variable
...
llvm-svn: 4262
2002-10-22 23:28:23 +00:00
Chris Lattner
ce64eddb71
- Two minor improvements to the MachineInstr class to reduce footprint and
...
overhead: Merge 3 parallel vectors into 1, change regsUsed hash_set to be a
bitvector. Sped up LLC a little less than 10% in a debug build!
llvm-svn: 4261
2002-10-22 23:16:21 +00:00
Chris Lattner
51a2c3cc2d
- Make sure to only keep track of mappings that the TD pass may need in the
...
future. This prevents having spurious map entries to nodes that we really
don't care about. This allows us to reenable the DeadNodeElim, which was
disabled.
llvm-svn: 4260
2002-10-22 16:01:03 +00:00
Chris Lattner
d90e74ae13
The callee is not correct, and confuses the TD pass. Null it out.
...
llvm-svn: 4259
2002-10-22 15:58:46 +00:00
Chris Lattner
96c998fb19
We need to know the call sites each function hosts
...
llvm-svn: 4258
2002-10-22 15:58:23 +00:00
Chris Lattner
ef09736481
Allow modification of callee
...
llvm-svn: 4257
2002-10-22 15:57:58 +00:00
Chris Lattner
e50beac7ea
Small space optimization: Make MachineOperands take 16 bytes instead of
...
20 on intel or 24 on sparc
llvm-svn: 4256
2002-10-22 00:15:13 +00:00
Chris Lattner
820d971233
- Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG to
...
setPreservesCFG to be less confusing.
llvm-svn: 4255
2002-10-21 20:00:28 +00:00
Chris Lattner
a8c82c2740
Rename Analysis Usage methods
...
llvm-svn: 4254
2002-10-21 19:57:59 +00:00
Chris Lattner
155fffd350
Delete unused arguments to DSGraph::cloneInto method
...
llvm-svn: 4253
2002-10-21 19:50:29 +00:00
Chris Lattner
f76087336f
- Add "ResolvingCaller" to the CallSite record. This keeps track of which
...
function was finally able to resolve the function call. Adding this allows
the TD pass to actually work right!
- Temporarily disable dead node pruning. This will be reenabled soon.
llvm-svn: 4252
2002-10-21 19:47:18 +00:00
Chris Lattner
c6191df9af
Add another copy ctor form
...
llvm-svn: 4251
2002-10-21 15:32:34 +00:00
Chris Lattner
78c1e7d83c
As it turns out, we don't need a fully generic mapping copy ctor, we just need
...
something that maps through a std::map. Since this simplified the client and
implementation code, do so now.
llvm-svn: 4250
2002-10-21 15:04:18 +00:00
Chris Lattner
32438d8c84
Don't create a new node for every reference to a global. This caused a huge
...
node explosion that doesn't help anything at all. In previous versions of
the representation this DID help, but not anymore.
llvm-svn: 4249
2002-10-21 13:51:30 +00:00
Chris Lattner
800b7e33df
Fix a confusing bug that caused return value and callee pointers to not
...
be printed!
llvm-svn: 4248
2002-10-21 13:47:57 +00:00
Chris Lattner
c5cb7a7dc0
Make sure to initialize isArray member
...
llvm-svn: 4247
2002-10-21 13:38:07 +00:00
Chris Lattner
2f5a6d46ae
Remove some unneccesary 'using' directives
...
llvm-svn: 4246
2002-10-21 13:31:48 +00:00
Chris Lattner
295d3ed7b8
Remove a 'using' directives from a header file. Using directives cause
...
global changes, so aren't good for headers.
llvm-svn: 4245
2002-10-21 13:24:50 +00:00
Chris Lattner
e4b24cc42c
Add a missing std:: qualifier
...
llvm-svn: 4244
2002-10-21 13:23:42 +00:00
Chris Lattner
93533e511b
Add a link to C++ in a nutshell book
...
llvm-svn: 4243
2002-10-21 02:38:02 +00:00
Chris Lattner
80e1a74820
Fix bug with prior checkin
...
llvm-svn: 4242
2002-10-21 02:18:55 +00:00
Chris Lattner
a986a2ab86
Two callsites are equivalent even if they are from two completely different
...
call instructions
llvm-svn: 4241
2002-10-21 02:09:03 +00:00
Chris Lattner
5c3ce31e1f
- Make DSCallSite not inherit from std::vector. Renamed methods slightly.
...
Make copy ctor have two versions to avoid dealing with conditional template
argument. DSCallSite ctor now takes all arguments instead of taking one
and being populated later.
llvm-svn: 4240
2002-10-21 02:08:03 +00:00
Chris Lattner
faa756ecee
Avoid extra copy
...
llvm-svn: 4239
2002-10-20 22:12:06 +00:00
Chris Lattner
3af17ce2cf
Simplify code a bit, add comment flyer
...
llvm-svn: 4238
2002-10-20 22:11:44 +00:00
Chris Lattner
fd16b72fc7
Split some long lines
...
llvm-svn: 4237
2002-10-20 22:11:17 +00:00
Vikram S. Adve
a12d4c0065
Warn when we are linking an executable without symbols.
...
llvm-svn: 4236
2002-10-20 21:45:49 +00:00
Vikram S. Adve
e85319693e
Remove spurious caller pointer in DSCallSite.
...
Also add functions to access pointer argument nodes cleanly.
llvm-svn: 4235
2002-10-20 21:41:02 +00:00
Chris Lattner
c94855e46b
This function can be static
...
llvm-svn: 4234
2002-10-20 20:39:31 +00:00
Chris Lattner
07d69052f8
Fix previous checkin :(
...
llvm-svn: 4233
2002-10-20 20:39:17 +00:00
Chris Lattner
28bef38c56
Avoid extra callSite copy
...
llvm-svn: 4232
2002-10-20 20:32:13 +00:00
Chris Lattner
43301680aa
Print the array flag
...
llvm-svn: 4231
2002-10-20 20:29:10 +00:00
Chris Lattner
2ff405c7e1
Add isArray flag
...
llvm-svn: 4230
2002-10-20 20:28:35 +00:00
Vikram S. Adve
ee5fb32466
Added a first-class representation for each call site that can be
...
used in the DS graphs in DSGraph.h. With that, the special-purpose
class BUDataStructure::CallSite is no longer needed here.
llvm-svn: 4229
2002-10-20 18:08:55 +00:00
Vikram S. Adve
dc9e142686
Added a first-class representation for each call site that can be
...
used in the DS graphs. Essentially, what was vector<DSNodeHandle>
before is now a DSCallSite with the same vector, plus pointers to the
CallInst and the caller Function. The special-purpose class
BUDataStructure::CallSite is no longer needed.
llvm-svn: 4228
2002-10-20 18:07:37 +00:00
Vikram S. Adve
2b68f2fbbc
Added a first-class representation for each call site that can be used
...
in the DS graphs.
llvm-svn: 4227
2002-10-20 18:04:43 +00:00