Misha Brukman
ab36a84bda
Don't use invalid HTML in a doxygen comment.
...
llvm-svn: 12962
2004-04-15 15:23:45 +00:00
Chris Lattner
0bb60b108d
Add a couple more IPO's
...
llvm-svn: 12863
2004-04-12 05:38:15 +00:00
Chris Lattner
4b1e880424
finegrainify namespacification
...
llvm-svn: 12862
2004-04-12 05:38:01 +00:00
Chris Lattner
903a90b9de
Disambiguate symbols after loop extraction so that we can diagnose a code
...
generator bug if multiple loops are extracted from a function.
llvm-svn: 12847
2004-04-11 23:52:35 +00:00
Chris Lattner
ff16e6b701
Fix an obvious bug in the refactoring I did a few days ago
...
llvm-svn: 12797
2004-04-09 22:28:33 +00:00
Chris Lattner
caefe03e39
Disable strict alias analysis in the backend c compiler, as the code we
...
generate is not TBAA safe.
llvm-svn: 12774
2004-04-08 15:18:59 +00:00
Chris Lattner
825c162788
Revert previous patch, I'm a moron :)
...
llvm-svn: 12773
2004-04-08 15:18:03 +00:00
Chris Lattner
5608c6da7e
Right, we break strict aliasing requirements. Make sure to disable strict
...
aliasing in the C compiler.
llvm-svn: 12772
2004-04-08 15:14:43 +00:00
Misha Brukman
e2d817bc26
Wrap at 80 cols.
...
llvm-svn: 12701
2004-04-06 17:04:30 +00:00
Chris Lattner
1a40aaf3ba
Minor cleanups
...
llvm-svn: 12700
2004-04-06 16:54:04 +00:00
Chris Lattner
3259504cce
Add a new gccld -native-cbe option which causes gccld to generate native code
...
for the application with the C backend instead of the native LLVM code generator
llvm-svn: 12698
2004-04-06 16:43:13 +00:00
Chris Lattner
d2c51f2cc3
Merge the code generator miscompilation code into the optimizer miscompilation
...
code. This "instantly" gives us loop-extractor power to assist with the
debugment of our nasty codegen issues. :)
llvm-svn: 12678
2004-04-05 22:58:16 +00:00
Chris Lattner
0442a87f47
Make a method public
...
llvm-svn: 12677
2004-04-05 22:01:48 +00:00
Chris Lattner
f856e42795
Minor cleanups, remove some old debug code
...
llvm-svn: 12676
2004-04-05 21:37:55 +00:00
Chris Lattner
5c943cebf1
Refactor and genericize code
...
llvm-svn: 12675
2004-04-05 21:37:38 +00:00
Chris Lattner
5ac19e9daf
Make full use of the Mangler interface to simplify code
...
llvm-svn: 12671
2004-04-05 19:31:02 +00:00
Chris Lattner
61dcf6709b
Minor change
...
llvm-svn: 12655
2004-04-05 01:31:50 +00:00
Chris Lattner
f592eff643
Remove obsolete analyses
...
llvm-svn: 12634
2004-04-02 20:56:33 +00:00
Chris Lattner
5ad71e4688
Tweak libraries for scev changes
...
llvm-svn: 12625
2004-04-02 20:32:46 +00:00
Chris Lattner
b9a26ff8fc
Minor speedup
...
llvm-svn: 12612
2004-04-02 16:28:32 +00:00
Chris Lattner
ec5b2f9597
minor formatting change
...
llvm-svn: 12606
2004-04-02 06:32:45 +00:00
Chris Lattner
950f3fac90
Fix two pretty serious bugs:
...
1. Each time the loop extractor extracted a loop, we would leak a module.
2. When we extracted a loop, we didn't add the new function to the list of
miscompiled functions. Thus if the bug was in a loop nest and we
extracted it, we could actually *LOSE THE BUG*, which is very bad.
With these patches, bugpoint has successfully found a bug for me in a function
with several nested loops, and cut it down to just one of them. :) :)
llvm-svn: 12605
2004-04-02 06:32:17 +00:00
Chris Lattner
54aa691a5c
Fix a fairly nasty bug that prevented bugpoint from working quite right when
...
hacking on programs with two functions that have the same name.
llvm-svn: 12604
2004-04-02 06:30:33 +00:00
Chris Lattner
b3f5ab8d5b
If the program returns a non-zero exit value, don't leave files laying
...
around
llvm-svn: 12603
2004-04-02 05:33:06 +00:00
Chris Lattner
a262913211
Fix wonky header
...
Address PR305: LLVM tools will happily spew bytecode onto your terminal
llvm-svn: 12602
2004-04-02 05:06:57 +00:00
Chris Lattner
e45504d887
When loop extraction succeeds, make sure to map the function pointers over
...
to avoid dangling references.
llvm-svn: 12470
2004-03-17 17:42:09 +00:00
Chris Lattner
e2b4b9ca3f
Fix an inverted condition that causes us to think that loop extraction
...
accomplished something when it really did not. This does not fix the bigger problem tho.
llvm-svn: 12469
2004-03-17 17:37:18 +00:00
Chris Lattner
9a8238e477
Fix an iterator invalidation problem in a "buggy" pass
...
llvm-svn: 12468
2004-03-17 17:29:08 +00:00
Brian Gaeke
f6f76523cb
Add a better head-of-file comment.
...
llvm-svn: 12447
2004-03-16 21:47:20 +00:00
Chris Lattner
83c74abb8e
Fix thinko, and PR292
...
llvm-svn: 12426
2004-03-16 01:51:54 +00:00
Chris Lattner
4ef444f59b
After reducing a miscompiled program down to the functions which are being
...
miscompiled, try to use the loop extractor to reduce the program down to a
loop nest that is being miscompiled. In practice, the loop extractor appears
to have too many bugs for this to be useful, but hopefully they will be fixed
soon...
llvm-svn: 12398
2004-03-14 22:08:00 +00:00
Chris Lattner
acf045e970
Fix a minor bug in runPassesOn
...
llvm-svn: 12397
2004-03-14 21:37:41 +00:00
Chris Lattner
d82b46916c
Add a new "AutoDebugCrashes" option
...
llvm-svn: 12396
2004-03-14 21:21:57 +00:00
Chris Lattner
d4b06def93
Refactor to use a new method
...
llvm-svn: 12395
2004-03-14 21:17:22 +00:00
Chris Lattner
c3bbd5a66d
Add new method
...
llvm-svn: 12394
2004-03-14 21:17:03 +00:00
Chris Lattner
491f3054b8
Refactor and clean up a bunch more code. No major functionality changes.
...
* Make several methods of bugdriver global functions (ParseInputFile, PrintFunctionList)
* Make PrintFunctionList truncate the output after 10 entries, like the crash debugger
did. This allows code sharing.
* Add a couple of methods to BugDriver that allows us to eliminate some friends
* Improve comments in ExtractFunction.cpp
* Make classes that used to be friends up bugdriver now live in anon namespaces
* Rip a bunch of functionality in the miscompilation tester into a new
TestMergedProgram function for future code sharing.
* Fix a bug in the miscompilation tester induced in my last checkin
llvm-svn: 12393
2004-03-14 20:50:42 +00:00
Chris Lattner
07b9a2c117
Add a method to extract a loop
...
llvm-svn: 12391
2004-03-14 20:02:07 +00:00
Chris Lattner
da20cdaaf2
add a fixme
...
llvm-svn: 12388
2004-03-14 19:31:00 +00:00
Chris Lattner
36e8168af5
Refactor all of the "splitting a module into two pieces" code to avoid
...
code duplication. Also, don't use ReduceMiscompilingFunctions::TestFuncs
to print out the final message.
llvm-svn: 12387
2004-03-14 19:27:19 +00:00
Chris Lattner
228bd4e931
Turn on argument promotion in gccas. This can give us substantially better
...
code in cases where the file has lots of static functions or anon namespaces.
llvm-svn: 12361
2004-03-13 21:38:35 +00:00
Chris Lattner
a2f653d0cc
Fix the "infinite looping unless you disable adce" bug
...
Also remove an option to disable adce :)
llvm-svn: 12359
2004-03-13 19:35:54 +00:00
Brian Gaeke
3cae3bad22
Revise comment and error message for the Bug 38 situation. Also, make it
...
print out the name of the function being used.
llvm-svn: 12347
2004-03-12 21:37:46 +00:00
Misha Brukman
34ab36e8c8
SparcV8 removed until it grows up becomes a mature backend.
...
llvm-svn: 12288
2004-03-11 18:16:33 +00:00
Chris Lattner
d07c6d9c03
Annotate functions with edge counts as well, if they are available.
...
llvm-svn: 12233
2004-03-08 20:04:32 +00:00
Chris Lattner
0179360703
Run the new pass in gccld now that it passes all tests
...
llvm-svn: 12196
2004-03-07 22:12:40 +00:00
Chris Lattner
ab9a9c4119
Add a hook to run with the V8 target, though it doesn't currently work. Also
...
mark the PPC backend as experimental
llvm-svn: 11962
2004-02-28 19:55:16 +00:00
Chris Lattner
dc004a7269
We have this snazzy link-time optimizer. How about we start using it? This
...
removes some cruft from 255.vortex, cleaning up after DAE and IPCP, which
do horrible, beautiful, things to vortex.
llvm-svn: 11861
2004-02-26 03:34:30 +00:00
Chris Lattner
24c4dd56b5
Add a new pass, run internalize first
...
llvm-svn: 11839
2004-02-25 21:35:13 +00:00
Chris Lattner
0dfe43a53a
Add a new pass
...
llvm-svn: 11838
2004-02-25 21:35:02 +00:00
Brian Gaeke
c6de948cd1
Great renaming part II: Sparc --> SparcV9 (also includes command-line options and Makefiles)
...
llvm-svn: 11827
2004-02-25 19:08:12 +00:00