Commit Graph

12533 Commits

Author SHA1 Message Date
Brian Gaeke
40e7fdc05a Fix encoding of ST*FSR instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14102 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 21:54:58 +00:00
Brian Gaeke
e8a6bee3c9 Fix assertion failure message to have the right method name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14101 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 20:44:42 +00:00
Chris Lattner
69566459cc Make the asmwriter much more tolerant of errors (which are common when working
on new front-ends and stuff).  Also get rid of some tabs that snuck in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14100 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 19:41:19 +00:00
Reid Spencer
389174b098 Columnized the compilation statistics for easier reading.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14099 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 18:29:15 +00:00
Chris Lattner
ff2c64c979 Fix the really bizarre stuff that happened last night in the tester
due to non-numeric diff failures that caused fpcmp to go into infinite loops


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14098 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 18:28:53 +00:00
Reid Spencer
fc621e2878 Made it possible for the printInfoComment method to invoke getSlot in
such a way that if the Value being printed is standalone that we don't
assert and abort but just print ":??" for the slot number instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14097 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 15:26:53 +00:00
John Criswell
6b5bd5857d Fix for PR#366. We use getClassB() so that we can handle cast instructions
that cast to bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14096 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 15:18:51 +00:00
Chris Lattner
457dd829ad Implement InstCombine/select.ll:test15*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14095 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 07:59:58 +00:00
Chris Lattner
9e28f18fb3 More instcombine testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14094 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 07:59:40 +00:00
Reid Spencer
525f228d95 Cleanup alignment of output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14093 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:22:00 +00:00
Reid Spencer
4502b37d7a Add some new fields for bytecode analysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14092 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:18:53 +00:00
Reid Spencer
edc3b582ae Implement analysis output. Don't dump function details unless requested.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14091 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:17:58 +00:00
Reid Spencer
649ee57b1d Implement some rudimentary analysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14090 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:16:43 +00:00
Reid Spencer
0545b3e673 Clean up indentation of file body output.
Don't dump functions unless "detailedResults" is requested.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14089 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:16:19 +00:00
Reid Spencer
a670c414f7 Move parsing details to Parser.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14088 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:15:21 +00:00
Reid Spencer
926572c478 Bring some things out of header files that belong only in this file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14087 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 06:14:52 +00:00
Chris Lattner
f523d06816 Be more careful about the order we put stuff onto the worklist. This allow us to
collapse this:
bool %le(int %A, int %B) {
        %c1 = setgt int %A, %B
        %tmp = select bool %c1, int 1, int 0
        %c2 = setlt int %A, %B
        %result = select bool %c2, int -1, int %tmp
        %c3 = setle int %result, 0
        ret bool %c3
}

into:

bool %le(int %A, int %B) {
        %c3 = setle int %A, %B          ; <bool> [#uses=1]
        ret bool %c3
}

which is handy, because the Java FE makes these sequences all over the place.

This is tested as: test/Regression/Transforms/InstCombine/JavaCompare.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14086 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 05:08:07 +00:00
Chris Lattner
16ea43b008 New testcase that is important for the Java FE
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14085 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 05:07:01 +00:00
Reid Spencer
6269ded8ee Cleaned up a dead header file to prevent duplicate definition warnings
in doxygen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14084 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 04:38:34 +00:00
Chris Lattner
2be51ae22d Implement select.ll:test14*
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14083 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 04:24:29 +00:00
Chris Lattner
4561db2edc New testcase for the instruction combiner that happen often in the Java FE
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14082 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 04:23:57 +00:00
Chris Lattner
aab3aff97b Minor tweaks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14081 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 03:59:05 +00:00
Reid Spencer
1a8c917ec6 Regularize title of Regression Test section. Clean up some blank space.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14080 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 02:07:25 +00:00
Chris Lattner
24738a72b4 Bug fixed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14079 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-09 01:09:16 +00:00
Chris Lattner
2a5020150c Workaround or a VS miscompilation bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14078 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 23:21:39 +00:00
Chris Lattner
97baedc8c5 I checked and no clients expect this to return null for unconditional branches
Simplify code and make it more uniform.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14077 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 22:03:05 +00:00
Chris Lattner
47c31a8248 Don't grab the condition of unconditional branches!
This fixes PR363


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14076 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 21:50:30 +00:00
Brian Gaeke
8e6e7c90ce Fix a minor bug in the map - since this pass adds a global symbol, it must be
accounted for in the map (at least, in its current format).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14075 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 20:08:30 +00:00
Brian Gaeke
0bbcd6bfd1 Add a forwarding method pop_front() that allows you to delete instructions
from the beginning of a MBB.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14074 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 18:52:47 +00:00
Brian Gaeke
777a1cde66 Add a TmpInstruction ctor that doesn't take a MCFI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14073 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 18:52:46 +00:00
Brian Gaeke
10c508b286 Explicitly specify libtool tag "CXX" so that if you setenv CXX to something
libtool can't parse, e.g., "/path/to/g++ -some-funny-options",
then it will still be able to compile and link.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14072 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 18:52:45 +00:00
Chris Lattner
82d55902c6 Fix a link error using VS8.0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14071 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 17:53:24 +00:00
Chris Lattner
85b0195f0e Apparently a particular vendor compiler uses the struct/class tag to MANGLE
symbols with.  Therefore, if you do not use struct/class consistently, you can
get LINK ERRORS.  grr.

This fixes the link errors for libsupport and vmcore.

-Chris


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14070 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 17:44:21 +00:00
Misha Brukman
ef39012738 Fix case of doxygen directive `\p': it's lowercase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14068 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 13:49:17 +00:00
Reid Spencer
f5d0af3916 * Fix indentation of Regression Test Results by making sure the
GetQMTestResults function closes all its open tags.
* Cause XFAIL results to not be reported at all except in the stats.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14067 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 08:01:33 +00:00
Reid Spencer
7c76d33c78 Put in a place holder for describing the differences in bytecode format
between LLVM versions. This is just a reminder so I don't forget to
document it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14066 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:41:41 +00:00
Reid Spencer
624c543887 Add a note about llvm-abcd, the Analysis of ByteCode Dumper
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14065 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:30:31 +00:00
Chris Lattner
ea95551d4a Ooh, that fixed the annoying warning!!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14064 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:19:29 +00:00
Chris Lattner
11eaf53e2a Bug fixed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14063 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:15:52 +00:00
Chris Lattner
2917ca87f7 New testcase for PR355
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14062 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:11:14 +00:00
Chris Lattner
72b08c97d3 Testcase for PR355
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14061 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 07:10:11 +00:00
Chris Lattner
c07c0df634 Add documentation to the TargetFrameInfo class, contributed by Vladimir Prus
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14060 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 06:23:17 +00:00
Reid Spencer
96684ef886 Clean up the documentation.
Simplify the file handling. It now only writes to std::cout.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14059 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:56:58 +00:00
Reid Spencer
381022b61f Clean up documentation and make it possible for the BytecodeAnalyzer to
store the output of the bytecode dumper.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14058 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:55:53 +00:00
Reid Spencer
5e8868d2a3 Fix the bug that was preventing the parser from working on all bytecode
files. It was reading non-initialized global vars when the flag said it was
initialized and vice versa. Causes mis-alignment since initialized and
non-initialized constants have different bytecode lengths.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14057 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:54:47 +00:00
Reid Spencer
b7041b0c43 Make it #include Parser.h instead of AnalyzerInternals.h since it only
needs the BytecodeHandler interface which is now in Parser.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14056 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:53:14 +00:00
Reid Spencer
aee4f5bbfd Adjust what's included to compensate for changes in Parser.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14055 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:52:29 +00:00
Reid Spencer
29dba0ceea Merged BytecodeHandler.h into Parser.h since the parser and the handler
must always coexist. Cleaned up the documentation on these interfaces
significantly. This is in preparation for moving Parser.h to the include
directories to make it a public interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14054 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-08 05:51:18 +00:00
Chris Lattner
40416e4e85 Fix PR361.
Dominance properties don't hold in unreachable code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14053 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-07 23:07:33 +00:00
Chris Lattner
9919101c58 New testcase for PR361
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14052 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-07 23:07:09 +00:00