aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2004-10-22Remove automake support.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17156 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-22We won't use automakeReid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17155 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-21Remove debug code emitter from the JITMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17151 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-21Make this compile.Alkis Evlogimenos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17150 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-21* Added basic support for JITing functions, basic blocks, instruction encoding,Misha Brukman
including registers, constants, and partial support for global addresses * The JIT is disabled by default to allow building llvm-gcc, which wants to test running programs during configure git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17149 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-20Don't clear or sign extend bool->int. This fires a few dozen times on the ↵Nate Begeman
test suite git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17147 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-20Explain what this pass does.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17146 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-20Small performance improvement in generated C code:John Criswell
Instead of unconditionally copying all phi node values into temporaries for all successor blocks, generate code that will determine what successor block will be called and then copy only those phi node values needed by the successor block. This seems to cut down namd execution time from being 8% higher than GCC to 4% higher than GCC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17144 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19* Add baseline structural JIT code, but disable the JIT to allow llvm-gcc buildsMisha Brukman
- Support added for functions, basic blocks, constant pool, constants, registers, and some basic support for globals, all untested * Turn assert()s into abort()s so that unimplemented functions fail in release git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17143 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19Hrm, some people complain when the compiler cheerfully tells them what it'sChris Lattner
doing... I guess they're right. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17142 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19Fix some grammarMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17141 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19If we're going to make the braces of functions line up for ease of readabilityMisha Brukman
and aesthetic reasons, might as well finish the job git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17140 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19Remove unnecessary spaces in function signatureMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17139 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19Simplify mapping info generation. In particular, the LLVM-to-MachineInstr mapBrian Gaeke
is no longer emitted, and we do not reference any MachineCodeForInstruction information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17138 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-19* Fit constructor initializer on a single lineMisha Brukman
* Delete blank chars at end of line to fit into 80 cols git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Initial automake generated Makefile templateReid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17136 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Move code to redefine INT64_{MIN,MAX} on AIX/PowerPC to a separate header,Misha Brukman
because #undef becomes commented out in DataTypes.h.in due to autoheader git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17135 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Initial implementation of the strength reduction for GEP instructions inNate Begeman
loops. This optimization is not turned on by default yet, but may be run with the opt tool's -loop-reduce flag. There are many FIXMEs listed in the code that will make it far more applicable to a wide range of code, but you have to start somewhere :) This limited version currently triggers on the following tests in the MultiSource directory: pcompress2: 7 times cfrac: 5 times anagram: 2 times ks: 6 times yacr2: 2 times git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17134 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18* AIX on Power defines INT64_MIN and INT64_MAX in ways that annoy GCC, soMisha Brukman
special-case those definitions * Add comments in #ifdef/#else/#endif clauses for ease of reading git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17132 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18AIX does not have mkdtemp() so emulate its behavior using mktemp() and mkdir()Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17131 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Fix miscompilations in the SparcV9 backend that were induced by this patch:Chris Lattner
http://mail.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20041011/019311.html git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17130 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Improve compatibility with VC++, patch contributed by Morten Ofstad!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17126 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Get this file compiling with VC++, patch contributed by Morten Ofstad. ↵Chris Lattner
Thanks Morten! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17125 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Declare a function in the correct namespace.Reid Spencer
Patch contributed by Morten Ofstad. Thanks Morten! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17124 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Correction to allow compilation with Visual C++.Reid Spencer
Patch contributed by Morten Ofstad. Thanks Morten! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17123 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Simplify code by deleting instructions that preceed unreachable instructions.Chris Lattner
Simplify code by simplifying terminators that branch to blocks that start with an unreachable instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17116 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17115 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Actually link all the analysis passes and their dependencies.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17114 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Remove extra comma.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17113 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Actually link in all the analysis passes.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17112 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Turn store -> null/undef into the LLVM unreachable instruction! This simpleChris Lattner
change hacks off 10K of bytecode from perlbmk (.5%) even though the front-end is not generating them yet and we are not optimizing the resultant code. This isn't too bad. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17111 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Turn things with obviously undefined semantics into 'store -> null'Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17110 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18My friend the invoke instruction does not dominate all basic blocks if itChris Lattner
occurs in the entry node of a function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17109 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-18Fix a bug that occurs when the constant value is the result of an invoke. InChris Lattner
particular, invoke ret values are only live in the normal dest of the invoke not in the unwind dest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17108 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Print a semicolon for the unreacahble instruction. This fixes problemsChris Lattner
where C requires semicolons in some cases to indicate null statements. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17107 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Getting ADCE to interact well with unreachable instructions seems like a ↵Chris Lattner
nontrivial exercise that I'm not interested in tackling right now. Just punt and treat them like unwind's. This 'fixes' test/Regression/Transforms/ADCE/unreachable-function.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17106 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17New testcase that ADCE shouldn't crash onChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17105 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Fix Regression/Transforms/Inline/2004-10-17-InlineFunctionWithoutReturn.llChris Lattner
If a function had no return instruction in it, and the result of the inlined call instruction was used, we would crash. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17104 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17New testcase that crashes the inlinerChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17103 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Pass -single_module option to gcc when linking dynamic libraries for use ↵Nate Begeman
with bugpoint, so that we can bugpoint multiple .cp files git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17102 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Generate correct stubs for weak-linked symbolsNate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17101 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17fold gep undef, ... -> undefChris Lattner
This comes up many times in perlbmk and probably others. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17100 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Remove printout, realize that instructions in the entry block dominate allChris Lattner
other blocks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17099 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17When inserting PHI nodes, don't insert any phi nodes that are obviouslyChris Lattner
unneccesary. This allows us to delete several hundred phi nodes of the form PHI(x,x,x,undef) from 253.perlbmk and probably other programs as well. This implements Mem2Reg/UndefValuesMerge.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17098 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17New testcase, no PHI should be inserted.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17097 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Enhance hasConstantValue to ignore undef values in phi nodes. This allows itChris Lattner
to think that PHI[4, undef] == 4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17096 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17hasConstantValue will soon return instructions that don't dominate the PHI node,Chris Lattner
so prepare for this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17095 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17The first hunk corrects a bug when printing undef null values. We would printChris Lattner
0->field, which is illegal. Now we print ((foo*)0)->field. The second hunk is an optimization to not print undefined phi values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17094 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Don't print stuff out from the code generator. This broke the JIT horriblyChris Lattner
last night. :) bork! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17093 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-17Add HAVE_BZLIB_H and HAVE_ZLIB_H tests.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17092 91177308-0d34-0410-b5e6-96231b3b80d8