Chris Lattner
cff3b41e95
Fix this function to not say that longs have 8-byte alignment on X86/PPC.
...
This method is really a gross hack, but at least we can make it work on
the targets we support right now.
This bug fix stops a crash in a testcase reduced from 176.gcc
llvm-svn: 17443
2004-11-02 22:18:18 +00:00
Tanya Lattner
444be61ea6
Added gross hacks such as creating my own def-use map, and picking on Instruction that I can add all my TmpInstructions to its MCFI.
...
llvm-svn: 17441
2004-11-02 21:04:56 +00:00
Chris Lattner
de7a85895c
Graphs that are part of equivalence sets can be multi-function SCC's
...
themselves. Make sure to update DSInfo correctly. This fixes a testcase
reduced from Prolangs-C++/objects
llvm-svn: 17439
2004-11-02 20:31:06 +00:00
Chris Lattner
661b8552bb
Correctly handle new SCC's found as a result of merging EQ graphs do to
...
function pointer equivalences. This fixes many problems, including a testcase
reduced Prolangs-C++/objects.
llvm-svn: 17437
2004-11-02 19:29:59 +00:00
Chris Lattner
ddb4d2a524
Substantially cleanup/speedup the eq graphs pass by walking the callgraph
...
a DSGraph at a time instead of a function at a time. This is also more
correct, though it doesn't seem to fix any programs.
llvm-svn: 17435
2004-11-02 17:51:11 +00:00
Chris Lattner
32b01c3143
Fix typo, contributed by Henrik Bach!
...
llvm-svn: 17434
2004-11-02 17:31:02 +00:00
Reid Spencer
651dd3ad5a
* New Recursive Target: clean-all. This target will recursively descend the
...
$(ObjDir) and clean out all build modes (Debug, Release, Profile) in
addition to the normal "clean" rules.
* Fix "clean" problems with Lex/Yacc so all files are remove properly.
* Ensure errors from "rm" don't thwart the uninstall and clean targets.
llvm-svn: 17433
2004-11-02 16:56:15 +00:00
Reid Spencer
9d0c1e0de6
* New Recursive Target: clean-all
...
llvm-svn: 17432
2004-11-02 16:36:03 +00:00
Chris Lattner
99d7bb3378
Fix a warning
...
llvm-svn: 17431
2004-11-02 15:27:57 +00:00
Chris Lattner
e5370f56ae
Minor cleanups
...
llvm-svn: 17428
2004-11-02 06:38:58 +00:00
Chris Lattner
96f6616479
* Rearrange code slightly
...
* Disable broken transforms for simplifying (setcc (cast X to larger), CI)
where CC is not != or ==
llvm-svn: 17422
2004-11-02 03:50:32 +00:00
Reid Spencer
9df63b4e52
List the individual tools for easier reference.
...
Make the bugpoint link reference the man page in the CommandGuide until
the Bugpoint.html file can describe bugpoint in a little more of a tutorial
style instead of just being a man page.
llvm-svn: 17416
2004-11-01 21:57:35 +00:00
Reid Spencer
2ed33b46d5
Add compliant header.
...
NOTE: This doc needs to describe the bugpoint "subsystem" not the tool.
llvm-svn: 17415
2004-11-01 21:55:46 +00:00
Reid Spencer
10c6d3f372
Add missing tag.
...
llvm-svn: 17414
2004-11-01 21:31:39 +00:00
Chris Lattner
b93914d06c
Remove more dead methods
...
llvm-svn: 17413
2004-11-01 21:07:05 +00:00
Chris Lattner
76a5a2eb2a
Delete a dead method
...
llvm-svn: 17412
2004-11-01 21:04:47 +00:00
Chris Lattner
773ca922a7
Rename FoldedGraph -> DSInfo to be consistent with other passes
...
delete some dead methods
llvm-svn: 17410
2004-11-01 21:02:23 +00:00
Reid Spencer
6b6557c5eb
Update table to llvm.css standards.
...
llvm-svn: 17409
2004-11-01 20:47:22 +00:00
Reid Spencer
a4e9b54222
Get rid of bogus entity references.
...
llvm-svn: 17408
2004-11-01 20:41:01 +00:00
Chris Lattner
5e9b3540d1
Get rid of the EquivClassGraphArgsInfo class, and the map that held it.
...
We only need one instance of the vector that it contains at a time.
llvm-svn: 17407
2004-11-01 20:37:00 +00:00
Chris Lattner
720eb217a7
Add placeholder variable to make Win32 work, applied for Morten Ofstad
...
llvm-svn: 17406
2004-11-01 20:10:20 +00:00
Chris Lattner
ef41cbb97d
Eliminate the cloneGraph method
...
llvm-svn: 17405
2004-11-01 19:54:06 +00:00
Reid Spencer
1e64cad5ff
Attempt CSS 2 compliance.
...
llvm-svn: 17404
2004-11-01 09:26:57 +00:00
Reid Spencer
4ffe4a7733
Attempt CSS 2 validation.
...
llvm-svn: 17403
2004-11-01 09:25:03 +00:00
Reid Spencer
7336a6c337
HTML 4.01 Strict compliance.
...
llvm-svn: 17402
2004-11-01 09:22:49 +00:00
Reid Spencer
271fe88b3f
Correct the document type declaration.
...
llvm-svn: 17401
2004-11-01 09:21:32 +00:00
Reid Spencer
fea14b5599
Add the HTML 4.01 and CSS icons with links to validators.
...
llvm-svn: 17400
2004-11-01 09:19:53 +00:00
Reid Spencer
0777321b8f
Attempt HTML 4.01 Strict compliance.
...
llvm-svn: 17399
2004-11-01 09:16:30 +00:00
Reid Spencer
f0714dd617
Cleanup the constants section.
...
llvm-svn: 17398
2004-11-01 09:02:53 +00:00
Reid Spencer
49fb40c6d9
Remove spurious end tag, fix indentation.
...
llvm-svn: 17397
2004-11-01 08:30:14 +00:00
Reid Spencer
9f16cad663
Make HTML 4.01 Strict compliant.
...
llvm-svn: 17396
2004-11-01 08:26:25 +00:00
Reid Spencer
4d21242e66
Fix tag placement to make HTML 4.01 Strict compliant.
...
llvm-svn: 17395
2004-11-01 08:24:13 +00:00
Reid Spencer
c3c4c4f843
Minor format tweask for tables.
...
llvm-svn: 17394
2004-11-01 08:19:36 +00:00
Reid Spencer
ad44f5c0be
Add layout classes for table elements so tables can be used for layouts.
...
This is easier than attempting to figure out dual purpose columnar layouts
for multiple browser types. All browsers understand tables.
llvm-svn: 17393
2004-11-01 08:18:06 +00:00
Reid Spencer
0be901556b
Configuration -> BuildMode
...
llvm-svn: 17392
2004-11-01 07:53:17 +00:00
Reid Spencer
b5b92fbaf6
Eliminate redundant variable definition. Rename Configuration -> BuildMode
...
Make lex/yacc output cleaned only if in a directory that has those sources.
llvm-svn: 17391
2004-11-01 07:50:27 +00:00
Chris Lattner
8af7424920
Speed up the tail duplication pass on the testcase below from 68.2s to 1.23s:
...
#define CL0(a) case a: f(); goto c;
#define CL1(a) CL0(a##0) CL0(a##1) CL0(a##2) CL0(a##3) CL0(a##4) CL0(a##5) \
CL0(a##6) CL0(a##7) CL0(a##8) CL0(a##9)
#define CL2(a) CL1(a##0) CL1(a##1) CL1(a##2) CL1(a##3) CL1(a##4) CL1(a##5) \
CL1(a##6) CL1(a##7) CL1(a##8) CL1(a##9)
#define CL3(a) CL2(a##0) CL2(a##1) CL2(a##2) CL2(a##3) CL2(a##4) CL2(a##5) \
CL2(a##6) CL2(a##7) CL2(a##8) CL2(a##9)
#define CL4(a) CL3(a##0) CL3(a##1) CL3(a##2) CL3(a##3) CL3(a##4) CL3(a##5) \
CL3(a##6) CL3(a##7) CL3(a##8) CL3(a##9)
void f();
void a() {
int b;
c: switch (b) {
CL4(1)
}
}
This comes from GCC PR 15524
llvm-svn: 17390
2004-11-01 07:05:07 +00:00
Chris Lattner
93d1e39f3e
Do not compute the predecessor list for a block unless we need it.
...
This speeds up simplifycfg on this program, from 44.87s to 0.29s (with
a profiled build):
#define CL0(a) case a: goto c;
#define CL1(a) CL0(a##0) CL0(a##1) CL0(a##2) CL0(a##3) CL0(a##4) CL0(a##5) \
CL0(a##6) CL0(a##7) CL0(a##8) CL0(a##9)
#define CL2(a) CL1(a##0) CL1(a##1) CL1(a##2) CL1(a##3) CL1(a##4) CL1(a##5) \
CL1(a##6) CL1(a##7) CL1(a##8) CL1(a##9)
#define CL3(a) CL2(a##0) CL2(a##1) CL2(a##2) CL2(a##3) CL2(a##4) CL2(a##5) \
CL2(a##6) CL2(a##7) CL2(a##8) CL2(a##9)
#define CL4(a) CL3(a##0) CL3(a##1) CL3(a##2) CL3(a##3) CL3(a##4) CL3(a##5) \
CL3(a##6) CL3(a##7) CL3(a##8) CL3(a##9)
void f();
void a() {
int b;
c: switch (b) {
CL4(1)
}
}
This testcase is contrived to expose N^2 behavior, but this patch should speedup
simplifycfg on any programs that use large switch statements. This testcase
comes from GCC PR17895.
llvm-svn: 17389
2004-11-01 06:53:58 +00:00
Chris Lattner
615e7fbcf3
When compiling a file, indicate what build it is for
...
llvm-svn: 17388
2004-11-01 06:14:59 +00:00
Chris Lattner
01f2381c72
* Do not refer to ActualCallees in CBU, when we can do it locally.
...
* *DO NOT* print CBU graphs when asked to print our own. This is just
FREAKING confusing and misleading: it's better to not print anything.
* Simplify and clean up some code
* Add some more paranoia assertion checking code that I found to track
down this bug:
* Fix a nasty bug that was causing us to crash on Prolangs-C++/objects,
where we were missing processing some graphs. This hunk is the bugfix:
- if (!I->isExternal() && !FoldedGraphsMap.count(I))
+ if (!I->isExternal() && !ValMap.count(I))
urg!
llvm-svn: 17386
2004-10-31 23:41:26 +00:00
Reid Spencer
b1454879b3
Wrap to 80 cols
...
llvm-svn: 17385
2004-10-31 23:24:31 +00:00
Reid Spencer
0b40fdb0ad
Add UsingLibraries.html link.
...
llvm-svn: 17384
2004-10-31 23:02:38 +00:00
Chris Lattner
aeb2b16c45
Simplify graph traversal, improve grammar
...
llvm-svn: 17383
2004-10-31 23:01:34 +00:00
Reid Spencer
1e3586ee1d
Give table headers the striped background.
...
llvm-svn: 17382
2004-10-31 23:01:02 +00:00
Reid Spencer
0d6d8d0af5
* Moved from ObjectFiles.html
...
* Changed names of libraries to reflect new naming scheme
* Added some more introductory material
* Added a rule of thumb.
llvm-svn: 17381
2004-10-31 23:00:25 +00:00
Reid Spencer
67fe9440e6
Renamed UsingLibraries.html
...
llvm-svn: 17380
2004-10-31 22:59:06 +00:00
Reid Spencer
737424ced3
Get the shared library extension right on all platforms, regardless of what
...
Chris wants on his platform.
llvm-svn: 17379
2004-10-31 22:53:06 +00:00
Chris Lattner
d49bd175f0
Do not do horrible things to the CBU graphs. In particular, we do NOT own
...
the CBU graphs, copy them instead of hacking on the CBU graphs.
Also, instead of forwarding request from ECGraphs clients to the CBU graphs
clients, service them ourselves.
Finally, remove a broken "optimization"
llvm-svn: 17378
2004-10-31 21:56:11 +00:00
Chris Lattner
e3c00e9eee
Fix comment
...
llvm-svn: 17377
2004-10-31 21:54:51 +00:00
Reid Spencer
68172d44c2
Fix output for building shared libraries per Chris' requirements
...
llvm-svn: 17376
2004-10-31 21:07:34 +00:00