Chris Lattner
5618cb60c2
Allow pointer indexing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1462 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:31:26 +00:00
Chris Lattner
90865150e4
Remove unsized array support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1461 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:30:51 +00:00
Chris Lattner
b024ef5e62
Add pointer indexing support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1460 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:30:09 +00:00
Chris Lattner
f7a551fd92
Don't waste as much horizontal space on #uses flag when printing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1459 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:29:12 +00:00
Chris Lattner
72e002564e
* Fix cases where we were calling Type->getName() instead of Type->getDescription()
...
* Remove unsized array support
* Malloc/alloca do not require that the first element be an unsized array to be an
array allocation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1458 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:28:42 +00:00
Chris Lattner
29c147302f
* Refactor trace values to work as a proper pass. Before it used to add
...
methods while the pass was running which was a no no. Now it adds the
printf method at pass initialization
* Revamp code to use printf calls instead of the old style print_<type>
calls.
* Simplify code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1457 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:26:05 +00:00
Ruchira Sasanka
545cc35b82
added a section on how to modify live variable code to use LLVM instructions
...
instead of machine instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1451 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 21:25:46 +00:00
Chris Lattner
f59ce92763
Not just arrays are unsized
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1450 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:46:11 +00:00
Chris Lattner
9102aee528
Assertion could never fail because another one would in it's place. :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1449 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:45:40 +00:00
Chris Lattner
481fafe67d
Some programs are using BB's as values, until we resolve this. Disable the assert
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1448 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:45:06 +00:00
Chris Lattner
e20bcd81eb
Build runtime library with local GCCAS
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1447 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:44:23 +00:00
Chris Lattner
e7c6f726c8
Implement sprintf
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1445 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:43:47 +00:00
Chris Lattner
9a49b210c1
Swap operands now preserves the semantics of the binary operator by changing
...
the opcode of the instruction if possible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1444 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:43:03 +00:00
Chris Lattner
82d18aa0e4
Add debugging to make a more useful message if a value gets constructed with a null type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1443 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13 00:41:27 +00:00
Ruchira Sasanka
789cebb908
Added more comments. Added code to destructor in MethodLiveVarInfo to delete
...
LiveVarSet caches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1435 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-08 21:05:27 +00:00
Ruchira Sasanka
b720a8bc1d
Added comments are more documentation info
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1434 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-08 21:04:22 +00:00
Chris Lattner
036efec1ec
Implement more general conversions for getelementptr instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1432 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-07 04:40:30 +00:00
Chris Lattner
44480b52b9
Remove code that is superceeded by code in ExprTypeConvert.cpp
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1431 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-07 04:39:01 +00:00
Chris Lattner
7c3f415d99
Don't insert scales of 1 :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1430 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-07 04:26:02 +00:00
Chris Lattner
7026107b70
Do not pessimize users of this function. Fix logic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1428 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-06 18:06:37 +00:00
Chris Lattner
f17a09d878
We can do cast-add elimination even on casts that reinterpret
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1427 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-06 18:06:13 +00:00
Chris Lattner
26a408ab9a
Fix bug that caused invalid transformations to be applied
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1426 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-06 18:05:55 +00:00
Chris Lattner
4753bf21a4
Actually return true when a change has been made
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1425 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 19:41:33 +00:00
Chris Lattner
2dc48bd788
Handle more complex array indexing expressions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1424 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 19:41:16 +00:00
Chris Lattner
8da5d426d1
Fix pessimizations on sized arrays
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1423 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 19:40:32 +00:00
Chris Lattner
ac0077e143
Fix a few bugs. Fix pessimization handling sized arrays
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1422 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 19:39:15 +00:00
Chris Lattner
0da29c8ec1
"fix" problems processing floating point expressions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1421 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 19:38:29 +00:00
Chris Lattner
f1d6521412
Hrm, don't do debugging output when debugging is off. :(
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1420 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 06:40:17 +00:00
Chris Lattner
a8b6d43f2a
Fixes to type conversion stuff to match induction variables more frequently
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1417 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 06:34:00 +00:00
Chris Lattner
6de230aca8
Fix a bug that clobbered the step value on some inputs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1416 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 06:32:30 +00:00
Chris Lattner
ed4feac757
Fix a bug introduced by "internal linkage" work.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1415 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 18:01:49 +00:00
Chris Lattner
3bf915f2a2
Fix bugs, don't do external methods which causes segv.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1414 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 08:13:06 +00:00
Chris Lattner
4b770a3145
Remove printouts
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1413 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 08:12:53 +00:00
Chris Lattner
621c9920c7
Fix a pessimization due to sucky LI testing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1412 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 08:12:47 +00:00
Chris Lattner
394437ff7e
Implement induction variable simplification
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1411 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 04:32:29 +00:00
Chris Lattner
9a88d278dd
Allow hyphens in identifier names
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1409 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 04:31:30 +00:00
Chris Lattner
7a17675206
Renamed inst_const_iterator -> const_inst_iterator
...
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04 00:03:30 +00:00
Chris Lattner
e9bb2df410
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1407 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 22:26:30 +00:00
Chris Lattner
7061dc50b2
Split the PHINode class out from the iOther.h file into the iPHINode.h file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1405 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 18:02:31 +00:00
Chris Lattner
6148c02591
Initial checkin of indvar stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1404 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 17:28:42 +00:00
Chris Lattner
c50df7e3aa
Compile the scalar directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1403 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 17:28:15 +00:00
Chris Lattner
df89f6efbc
Induction variables must be phi nodes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1402 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-03 17:27:42 +00:00
Chris Lattner
f60dc88b3d
Move support directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1401 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-29 16:32:16 +00:00
Chris Lattner
cee8f9ae67
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-27 00:03:19 +00:00
Chris Lattner
360e17eaf1
Move DataTypes.h from llvm/Support to just Support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1399 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 23:04:08 +00:00
Chris Lattner
0900980cc5
Turn off debug info
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1396 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:36:58 +00:00
Chris Lattner
de51dd890f
Use pointertype where appropriate
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1392 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:20:16 +00:00
Chris Lattner
69b5ce90dc
Remove invalid,unneccesary ## token
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1391 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:19:27 +00:00
Chris Lattner
6731f08dbc
Implement internal
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1385 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:14:56 +00:00
Chris Lattner
9e00579228
Make strings be internal
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1384 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:14:33 +00:00
Chris Lattner
e81dc1dd94
Remove debugging output
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1383 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:14:16 +00:00
Chris Lattner
c54692b969
Support internal linkage
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1382 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:14:03 +00:00
Chris Lattner
d4c1550cac
Build IPO directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1381 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:59:30 +00:00
Chris Lattner
e4d25aad16
Implement support for internal methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1380 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:59:18 +00:00
Chris Lattner
bd70bb94d6
Include const prop as part of -raise
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1379 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:58:55 +00:00
Chris Lattner
f78032fe06
* Implement support for folding multiple single letter arguments together like
...
with ls: ls -la === ls -l -a
* Implement support for trimming arguments that start with a single letter
argument so that -lfoo is recognized as -l foo for the linker
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1378 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:58:34 +00:00
Chris Lattner
5b7d42b142
Misc cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1377 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:57:38 +00:00
Chris Lattner
faffb053fe
Expose constant propogation of an instruction in a clean way
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1376 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:57:12 +00:00
Chris Lattner
4ed17bad69
Stuff after a #endif is not valid CPP input and breaks some compilers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1375 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:56:52 +00:00
Chris Lattner
d23b1d31c0
Implement internal method support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1374 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:56:10 +00:00
Chris Lattner
dda719665b
Implement support for internal methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1373 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:54:16 +00:00
Chris Lattner
a2eb259c6b
Implement writer support for Loops, Induction Variables, and CallGraphs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1372 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:53:29 +00:00
Chris Lattner
50020223b9
Make Mul work right
...
Make sub work right
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1371 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:53:07 +00:00
Chris Lattner
ff5a8c43c9
Fix a bad assertion to be correct . The root basic block can be used by PHI nodes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1370 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:52:02 +00:00
Chris Lattner
25e9cad236
Implement a new entry node that has edges to all external methods in the module
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1369 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:51:25 +00:00
Chris Lattner
30474bb929
Implement DCE of global values
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1360 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:42:17 +00:00
Chris Lattner
0bbe58f073
* Implement dominator based loop identification
...
* Implement cleaner induction variable identification
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1359 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:41:20 +00:00
Chris Lattner
782b939db1
* Implement array indexing in lli
...
* Add external atoi method as well as floor, and srand
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1355 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:18:18 +00:00
Chris Lattner
e9c5dc9cb1
Support Array Indexing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1348 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:02:05 +00:00
Chris Lattner
58716b9791
Implement: isLosslesslyConvertableTo and new CompositeType base class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1347 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:01:47 +00:00
Chris Lattner
c267f7bcc0
If a name conflict occurs when inserting a value, rename it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1346 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:01:18 +00:00
Chris Lattner
7c54b4a067
Support array indexing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1345 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:00:43 +00:00
Chris Lattner
491b29f247
Support Composite's, not just structs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1344 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:00:13 +00:00
Chris Lattner
89a1c806ea
losslessCastableTypes is moved to Type class
...
getStructOffsetType supports array indexing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1343 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:59:47 +00:00
Chris Lattner
12739d9f87
Support selectable structure transformations
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1342 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:59:10 +00:00
Chris Lattner
8090e8c18e
Support mutation of array indexing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1341 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:58:33 +00:00
Chris Lattner
3cc7ddedbb
Clean up code, implement array indexing stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1340 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:58:14 +00:00
Chris Lattner
a0fa588d77
Implement array indexing reverse engineering
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1339 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:57:31 +00:00
Chris Lattner
69a86e4e23
The old getIndices has been deprecated, because it no longer works. It now
...
is named getIndicesBROKEN() and shall be removed when the codebase is updated
to not call it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1338 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:56:19 +00:00
Chris Lattner
b2b12b4a62
Implement array indexing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1337 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:54:55 +00:00
Chris Lattner
6cdb0118e8
Implement array indexing with uints
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1336 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:54:11 +00:00
Chris Lattner
882572aa68
* Implement more powerful expr analysis of cast instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1335 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:53:50 +00:00
Chris Lattner
8927973283
Be more const correct
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1332 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:48:56 +00:00
Ruchira Sasanka
3113375f90
commented out popAllTempValues since it leads to a bug - see code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1327 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 22:03:04 +00:00
Ruchira Sasanka
f90870f622
Commented some popTempArg.. since it leads to a bug
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1326 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 22:02:06 +00:00
Ruchira Sasanka
07c7086bd2
Added naming to inserted phi copy values - for easy debugging
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1325 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 20:46:40 +00:00
Ruchira Sasanka
295264dcb4
changed since names of some methods in PhyRegAlloc changed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1324 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 20:25:07 +00:00
Ruchira Sasanka
ba9d5dba25
Fixed a bug in setReLRegsUsedByMI
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1323 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 20:23:19 +00:00
Ruchira Sasanka
825dd55429
Changed some names of methods, added const etc.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1322 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 20:22:37 +00:00
Vikram S. Adve
345bcc8be1
Fix use of AllocateLocalVar for alloca instruction!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1319 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:22:39 +00:00
Vikram S. Adve
7c47c7201d
Modify AllocateLocalVar method to take a size argument.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1318 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:22:26 +00:00
Ruchira Sasanka
f6dfca1395
fixed setUsedRegAtMI
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1317 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:00:53 +00:00
Vikram S. Adve
2ed5ccd512
Print incoming arguments and return values.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1315 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:00:16 +00:00
Vikram S. Adve
b9959d8058
Fix int->float conversion.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1314 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 14:59:56 +00:00
Chris Lattner
430aa9ec1c
-cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1312 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 04:34:46 +00:00
Ruchira Sasanka
20ac79e329
Changed phi elimination code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1311 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 00:27:14 +00:00
Vikram S. Adve
0e7c737f6e
Fix cute little bug that was causing the last
...
structure offset to be ignored in computing an offset!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1310 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 21:24:44 +00:00
Ruchira Sasanka
8d24337eea
Small changed to printing a machine operand - It the operand is a def, it prints
...
a star after it - only for debugging
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1309 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 20:05:23 +00:00
Vikram S. Adve
ecd5813639
Don't assume constant operand can only be in position 1!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1308 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 18:49:45 +00:00
Vikram S. Adve
4c5fe2d3ed
Add function returning which operand holds immediate constant
...
for a given opcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1307 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 18:48:36 +00:00
Vikram S. Adve
9e29f78029
Idiotic error in last fix.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1306 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 17:55:02 +00:00
Vikram S. Adve
c811745156
Don't need to load a NULL pointer constant from memory!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1305 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 17:24:49 +00:00
Vikram S. Adve
c9c6aa0445
Change latency of SETX to improve schedule -- just a hack.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1304 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:54:44 +00:00
Ruchira Sasanka
cbddf49665
Added support method for setting interference for pseudo instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1303 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:37:13 +00:00
Ruchira Sasanka
d63aaaaabe
Added M_PSEUDO_FLAG for SETX .. instr
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1301 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:35:13 +00:00
Ruchira Sasanka
22ccb1b905
Added interference for args in pseudo instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1300 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:33:58 +00:00
Chris Lattner
3bcce72f95
Rename cruft
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1299 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:28:18 +00:00
Chris Lattner
65ea171409
Remove much cruft from the MemAccessInst instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1298 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:27:58 +00:00
Chris Lattner
d5b48ca422
Better heuristics for handling arrays
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1296 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:02:49 +00:00
Ruchira Sasanka
84dce16fb1
commented out lines printing code after scheduling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1295 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:12:53 +00:00
Ruchira Sasanka
f221a2e0a8
Fixed a bug concering LR spilling. Earlier, added spilled code was not inserted
...
into the instruction stream correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1294 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:09:30 +00:00
Ruchira Sasanka
5f98aca57c
Changed checking for invalid register number - earlier it was uisng a contant
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1293 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:08:19 +00:00
Chris Lattner
1b600144bd
Implement some more rand functions for em3d benchmark
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1291 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 05:46:08 +00:00
Chris Lattner
ce22ec1251
* Change ExpressionConvertableToType to more closely match map behavior of
...
ConvertExpressionToType
* Make ValueHandle's remove instruction from maps when they are deleted so that
no false map hits occur if a subsequent instruction is allocated to the same
space in memory. This was a VERY VERY VERY EVIL NASTY BUG to track down. :-P
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1288 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 05:01:36 +00:00
Chris Lattner
e72c557dff
Minor style cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1287 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 04:59:58 +00:00
Chris Lattner
3d775c3f39
Avoid assertion failure when taking size of unsized array. Todo item herE
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1286 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 04:59:41 +00:00
Vikram S. Adve
e85f2332db
Do the same for allocating spills to get their alignment right too.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1285 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:40:22 +00:00
Vikram S. Adve
00521d79bf
When allocating space on stack for writing a register,
...
use the size of the register, not the size of the Value type,
to get the right alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1284 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:26:35 +00:00
Vikram S. Adve
e492c9d4d1
Bug fix in offset alignment computations: don't subtract the padding
...
value from size *before* subtracting size from offset!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1283 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:26:23 +00:00
Chris Lattner
e6e8b28a57
Remove debug info :(
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1280 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 21:52:57 +00:00
Chris Lattner
77a316ad2b
Fix bug in new assertion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1279 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 21:48:38 +00:00
Ruchira Sasanka
9d47866497
Fixed a bug with pervious ColorCallArg
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1278 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:54:19 +00:00
Ruchira Sasanka
91014f6b0c
Canged ColorCallArg so that when a call arg is directly pushed on to stack
...
for argument passing, that instruction is directly added to the InstructionsBefore
set of the called machine instruction - i.e., it is not reordered.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1277 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:31:47 +00:00
Chris Lattner
27afeb2be8
Add an assertion check
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1276 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:30:32 +00:00
Chris Lattner
b7325433aa
I don't know what I was thinking
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1275 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:30:12 +00:00
Chris Lattner
84efe09e3d
Print percentages for profiling info better
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1274 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:13:14 +00:00
Chris Lattner
fd79ab5088
Fix minor bug
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1273 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:13:04 +00:00
Ruchira Sasanka
7130938f94
For phi elimination, now we are generating only one instruction
...
using cpValue2Value instead of
passing vector to createCopyInstructionByType.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1272 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 19:42:27 +00:00
Ruchira Sasanka
061b8edb27
Changed insert instructions only for CONSTANTS - back to original
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1271 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 19:32:04 +00:00
Vikram S. Adve
3438b21ebd
Disable use of the Phi machine instruction which is no longer needed
...
for register allocation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1270 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 18:54:11 +00:00
Vikram S. Adve
200a435966
Eliminate most uses of the machine instruction vector for each LLVM instr,
...
since some m. instr. may be generated by LLVM instrs. in other blocks.
Handle non-SSA (anti and output) edges and true edges uniformly by
working with machine instructions alone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1269 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 18:53:43 +00:00
Chris Lattner
a95c69997f
Print profile info if exit() is called
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1268 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 16:28:48 +00:00
Chris Lattner
e240906471
Hack a structure profiling option together
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1267 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 16:19:45 +00:00
Ruchira Sasanka
67a463ac04
Added phi elimination code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1265 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:45:33 +00:00
Ruchira Sasanka
b2490fc4fb
Added phi elimination code - not final
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1264 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:44:50 +00:00
Vikram S. Adve
d9beb975f2
Improved printing routines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1263 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:19:47 +00:00
Vikram S. Adve
af00d485a4
Major improvement to how nodes are built for a BB.
...
LLVM instruction is no longer recorded in each node, but BB is.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1262 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:18:01 +00:00
Vikram S. Adve
5567e942c0
Adjust all stack variable offsets to be aligned by size.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1261 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 05:17:23 +00:00
Vikram S. Adve
fd9b7dcbf5
Fix dumb bug in alignment adjustment code!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1260 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 05:16:39 +00:00
Vikram S. Adve
998cf0d25f
Fix bogus code that was eliminating needed args.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1259 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 23:11:36 +00:00
Ruchira Sasanka
c56e5c1485
Fixed FP and SP usage. SP for outgoing args - for everything else FP
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1258 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 22:37:51 +00:00
Ruchira Sasanka
6beb013c37
cahnged StackPointer accesses to FramePointer
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1257 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:49:37 +00:00
Vikram S. Adve
f1a0a10813
Fix errors in computing downgrowing offsets, and in
...
computing size of extra outgoing args.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1256 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:23:33 +00:00
Vikram S. Adve
5a81692f47
Down-growing offsets from FP should start at 0, not -1.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1255 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:22:11 +00:00
Vikram S. Adve
5b43af962b
Only add true dep. edges from an earlier to a later instruction.
...
This wasn't a problem until we started putting copies for Phi values
that produced cycles in the SchedGraph!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1254 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 01:23:27 +00:00
Ruchira Sasanka
65480b75af
Changed code to ignore Phi Nodes in PhyRegAlloc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1253 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 21:21:36 +00:00
Ruchira Sasanka
ae4bcd7566
Corrected reodering code for instructions inserted before calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1252 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 21:20:43 +00:00
Chris Lattner
7546c21ae1
Initail checking of structure swapper
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1248 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 07:28:25 +00:00
Chris Lattner
bff7c3a898
Initial checkin of structure mutator
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1246 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 07:26:31 +00:00
Vikram S. Adve
2144722389
Several bug fixes in printing constants, particularly with unsized
...
arrays and multi-dimensional arrays.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1239 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 02:03:06 +00:00