Commit Graph

1337 Commits

Author SHA1 Message Date
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
27f65c8441 Remove unused method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1368 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:50:26 +00:00
Chris Lattner
a3c2dee477 Expose constant prop of an instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1367 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:50:11 +00:00
Chris Lattner
3ee997ba42 Fix field initialization order problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1366 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:49:54 +00:00
Chris Lattner
1c3d5169be Allow output of manipulators for GCC 2.96 compatibility
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1365 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:49:33 +00:00
Chris Lattner
7a8738c844 Add writer support for call graph nodes and loops and induction variables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1364 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:47:46 +00:00
Chris Lattner
8bbc979052 Implement an entry node for the call graph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1363 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:47:11 +00:00
Chris Lattner
6197b0fe54 Implement "internal vs external linkage" which corresponds to the C notion of static
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1362 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:46:40 +00:00
Chris Lattner
c5d1d20e28 Implement stuff, remove todos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1361 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:42:55 +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
ee6826b5e3 Change swapstructs itf
Add nasty hack to be removed later


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1356 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:18:53 +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
a8b3015d40 Run constprop before -raise
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1354 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:16:07 +00:00
Chris Lattner
4d631b85c1 Test array indexing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1349 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 17:02:56 +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
0252755825 Rearrange code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1334 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:49:49 +00:00
Chris Lattner
d43d9007a3 Allow array indexing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1333 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:49:12 +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
Chris Lattner
45ee091719 * Remove the indexVec stuff which gets out of sync with the operands of the
instruction.
* Change the indices to take a vector of Value's instead of ConstPoolVal's
  for array indexing
* Add new idx_ iterator support for iterating over indices


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1331 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:48:41 +00:00
Chris Lattner
283f4e5ac4 New Method isLosslesslyConvertableTo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1330 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:47:10 +00:00
Chris Lattner
7c0cdc0cc8 Add new CompositeType shared baseclass of ArrayType and StructType
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1329 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:46:45 +00:00
Chris Lattner
6fa90497b0 Add casts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1328 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 16:46:09 +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