Chris Lattner
1a84bd38ef
Do not mark obviously unreachable blocks live when processing PHI nodes,
...
and handle incomplete control dependences correctly. This fixes:
Regression/Transforms/ADCE/dead-phi-edge.ll
-> a missed optimization
Regression/Transforms/ADCE/dead-phi-edge.ll
-> a compiler crash distilled from QT4
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20227 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-17 19:28:49 +00:00
Chris Lattner
ae02b723bf
New files, testing for a crash in ADCE compiling QT and a missed optimization.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20226 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-17 19:27:44 +00:00
Chris Lattner
2352fec205
Scary typo that fixes Regression/Transforms/IndVarsSimplify/2005-02-17-TruncateExprCrash.ll
...
and PR515.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20224 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-17 16:54:16 +00:00
Chris Lattner
491a1b87d5
new testcase for PR515
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20223 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-17 16:53:41 +00:00
Reid Spencer
78ba11d0d2
Remove the "pax" program from the list of those needed to support LLVM.
...
The install target in Makefile.rules no longer uses pax but just uses find
and "install" instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20216 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 16:21:00 +00:00
Reid Spencer
2804201b63
Fix installation of configuration files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20215 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 16:17:11 +00:00
Reid Spencer
1a9a69c596
* Don't flatten the directory hierarchy when installing headers
...
* Make it possible to have the Install program run in verbose mode when
the TOOL_VERBOSE=1 option is set
* Ensure non-executable installed files do not install with execute perms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20214 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 16:13:02 +00:00
Reid Spencer
2edabc00dc
Don't use pax for installing header files. Use the install program instead.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20213 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 15:54:03 +00:00
Jeff Cohen
170b217b10
Somehow tablegen.exe got moved... fix up tablegen invocations to match.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20212 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 05:06:52 +00:00
Jeff Cohen
e210279047
Get bugpoint compiling with VC++ again, not that it works anyway.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20211 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 05:05:31 +00:00
Jeff Cohen
e5f7e65f95
Arg list already has program name in it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20208 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 04:43:45 +00:00
Tanya Lattner
db1680b2be
Fixed node deletion bug.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20207 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-16 04:00:59 +00:00
Chris Lattner
2ee51cbeb8
Instead of doing a manual comparison loop, just use memcmp, thanks to JohnC
...
for the suggestion! :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20203 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 22:12:10 +00:00
Chris Lattner
e4b6a86852
Make this more efficient now that we know both files are the same length.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20202 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 22:01:43 +00:00
Misha Brukman
1e1a99fffa
Fix spelling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20201 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 21:59:53 +00:00
Reid Spencer
45d55641fa
Adjust DiffFilesWithTolerance to help poor cygwin's mmap facility by
...
handling zero length files a little more intelligently. If both files are
zero length then we return 0 (true) indicating a match. If only one of the
files is zero length then we return 1 (false) indicating that the files
differ. If the files don't agree in length then they can't match so we
skip the first loop that looks for a quick match.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20200 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 21:47:02 +00:00
Andrew Lenharth
adf75775fa
add Alpha to llc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20198 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 21:14:09 +00:00
Chris Lattner
7a823bd01f
Fix a problem where the PPC backend lost track of the fact that it had
...
to save and restore the LR register on entry and exit of a leaf function
that needed to access globals or the constant pool. This should hopefully
fix oscar from sending the PPC tester spinning out of control.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20197 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 20:26:49 +00:00
Chris Lattner
7a0c775044
Add a sanity check.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20195 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 18:48:48 +00:00
Chris Lattner
d672ab936f
Add a new method to make it easy to update graphs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20194 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 18:40:55 +00:00
Chris Lattner
5ad907a5e1
Bug fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20193 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 07:02:12 +00:00
Chris Lattner
8399e02a2c
Fix volatile load/store of pointers. Consider this testcase:
...
void %test(int** %P) {
%A = volatile load int** %P
ret void
}
void %test2(int*** %Q) {
%P = load int*** %Q
volatile store int** %P, int*** %Q
ret void
}
instead of emitting:
void test(int **l1_P) {
int *l2_A;
l2_A = (int **((volatile int **)l1_P));
return;
}
void test2(int ***l2_Q) {
int **l1_P;
l1_P = *l2_Q;
*((volatile int ***)l2_Q) = l1_P;
return;
}
... which is loading/storing volatile pointers, not through volatile pointers,
emit this (which is right):
void test(int **l1_P) {
int *l3_A;
l3_A = *((int * volatile*)l1_P);
return;
}
void test2(int ***l2_Q) {
int **l1_P;
l1_P = *l2_Q;
*((int ** volatile*)l2_Q) = l1_P;
return;
}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20191 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 05:52:14 +00:00
Chris Lattner
4a9dc294d6
Bug fixed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20190 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 05:28:06 +00:00
Chris Lattner
8d358174da
New testcase for PR510.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20189 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-15 05:18:05 +00:00
Chris Lattner
a5d803e248
wow, interesting typo :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20187 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 22:58:38 +00:00
Chris Lattner
0a8794d043
execution tests shouldn't go here. This was killing the PPC nightly tester.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20186 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 21:54:32 +00:00
Reid Spencer
9a8398e7a6
For PR496:
...
When llvm-gcc is not available, bypass rules for Modules and Bytecode
Libraries that require llvm-gcc and emit instead a warning that llvm-gcc
is not available. This permits "make LLVMGCC=" to build LLVM completely
without error and provides warnings about the modules and bc libs that
could not be constructed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20185 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 21:54:08 +00:00
Chris Lattner
0798056b28
Fix a bug in my previous change to this, which broke the build on sparcs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20184 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 21:42:10 +00:00
Chris Lattner
27e192196f
Print GEP offsets as signed values instead of unsigned values. On X86, this
...
prints:
getelementptr (int* %A, int -1)
as: "(A) - 4" instead of "(A) + 18446744073709551612", which makes the
assembler much happier.
This fixes test/Regression/CodeGen/X86/2005-02-14-IllegalAssembler.ll,
and Benchmarks/Prolangs-C/cdecl with LLC on X86.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20183 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 21:40:26 +00:00
Chris Lattner
eb28797506
A testcase that LLC produces illegal asm on for Prolangs-C/cdecl now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20182 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 21:31:41 +00:00
Chris Lattner
8a7980b5ea
Fix the second bug attached to PR504.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20181 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 20:11:45 +00:00
Chris Lattner
a92d12c053
Work around GCC PR19958, which causes programs to sometimes crash after
...
printing help output or version info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20180 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 19:17:29 +00:00
Misha Brukman
b70aaa62b6
Write out single characters as chars, not strings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20179 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 18:52:35 +00:00
Chris Lattner
f54e9cb739
Bugs fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20178 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 16:57:55 +00:00
Chris Lattner
9d30e22da0
Implement CodeGen/CBackend/2005-02-14-VolatileOperations.ll
...
Volatile loads and stores need to emit volatile pointer operations in C.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20177 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 16:47:52 +00:00
Chris Lattner
ee6cfda17c
new testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20176 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 16:45:38 +00:00
Reid Spencer
f1e6e84c66
Update makefile to use PROJ_* makefile variables intead of BUILD_* as
...
required by changes to the Makefile.rules. Patch contributed by Vladimir
Merzliakov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20175 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 16:04:28 +00:00
Reid Spencer
cf61b124a8
Update comments to reflect new variable names. Patch contributed by
...
Vladimir Merzliakov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20174 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 16:02:19 +00:00
Misha Brukman
e9b0a02579
Give props to Andrew for the Alpha backend
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20173 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 09:07:23 +00:00
Andrew Lenharth
572af908e4
fix setcc on floats, fixes singlesource:pi, perhaps others
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20172 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 05:41:43 +00:00
Chris Lattner
d2beaa63b3
new testcase for PR509
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20171 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-14 02:54:41 +00:00
Chris Lattner
550c57cb30
Fix the llvm bootstrap
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20170 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 23:37:09 +00:00
Chris Lattner
0c09e5fb91
Move private helper function into the only .cpp file that uses it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20169 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 23:14:06 +00:00
Chris Lattner
45495c5248
Move helper function here.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20168 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 23:13:47 +00:00
Chris Lattner
7456e3ce38
Conform to the documented interface by null terminating argument lists!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20167 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 23:10:45 +00:00
Chris Lattner
ed5fa58a07
Make sure to null terminate argument lists!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20166 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 23:02:34 +00:00
Chris Lattner
946af52687
If errno is zero strerror_r does not modify the buffer, leaving it unterminated.
...
This causes garbage to be printed out after error messages.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20165 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 22:46:37 +00:00
Chris Lattner
2e12c745ea
Add some updates
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20164 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 22:27:24 +00:00
Chris Lattner
8e64f15d3c
SuSE 3.3.3 is also borken.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20163 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 22:20:49 +00:00
Chris Lattner
8a1573f823
Do not replace ostream << Module*, only ostream << Module&.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20157 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-13 19:15:01 +00:00