summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Do not use variable sized arrays in C++, they are non-portable. PatchChris Lattner2004-10-251-5/+5
| | | | | | contributed by Morten Ofstad llvm-svn: 17217
* Removed dead method, printPHICopiesForSuccessors().John Criswell2004-10-251-21/+0
| | | | llvm-svn: 17216
* Patch to support MSVC better, contributed by Morten OfstadChris Lattner2004-10-251-1/+1
| | | | llvm-svn: 17215
* Patch to support MSVC, contributed by Morten OfstadChris Lattner2004-10-251-1/+1
| | | | llvm-svn: 17214
* Modified switch generation so that only the phi values associated with theJohn Criswell2004-10-251-1/+2
| | | | | | destination basic block are copied. llvm-svn: 17212
* Implement more complete and correct codegen for bitfield inserts, as testedNate Begeman2004-10-241-89/+236
| | | | | | | by the recently committed rlwimi.ll test file. Also commit initial code for bitfield extract, although it is turned off until fully debugged. llvm-svn: 17207
* Fix the previous bug the correct way. This fixes ptrdist/bcChris Lattner2004-10-241-2/+2
| | | | llvm-svn: 17201
* Make this actually work.Alkis Evlogimenos2004-10-241-2/+2
| | | | llvm-svn: 17199
* Add ConstantExpr::getSizeOf(Type*).Alkis Evlogimenos2004-10-241-0/+9
| | | | llvm-svn: 17196
* * Correctly handle the MovePCtoLR pseudo-instr with a bl to next instrMisha Brukman2004-10-231-9/+15
| | | | | | * Stop the confusion of using rv and Addr for global addresses: just use rv llvm-svn: 17195
* Add BA, BL, and BLA opcodesMisha Brukman2004-10-231-1/+4
| | | | llvm-svn: 17193
* * Do not emit IMPLICIT_DEF pseudo-instructionsMisha Brukman2004-10-231-6/+71
| | | | | | | | | * Convert register numbers from their opcode value to the real value, e.g. PPC::R1 => 1 and PPC::F1 => 1 * Add correct handling of loading of global values which are PC-relative -- implement ha16() and lo16() llvm-svn: 17190
* DForm_1, particularly used by store instructions, needs the immediate operand toMisha Brukman2004-10-231-1/+13
| | | | | | | be listed second as that is how the instructions are usually created (and is the correct asm syntax) so that it's assembled correctly from its constituents llvm-svn: 17183
* Fix the SPR field for MTLR, MFLR, MTCTR, and MFCTR instructions.Misha Brukman2004-10-231-4/+7
| | | | | | | The decimal value given in the manual (8 or 9) really needs to be multiplied by a factor of 32 because of the group of 5 zero bits after the register code. llvm-svn: 17182
* The value of the XO field for MFLR and MFCTR is 339, not 399Misha Brukman2004-10-231-2/+2
| | | | llvm-svn: 17181
* Remove extraneous blank lineMisha Brukman2004-10-231-1/+0
| | | | llvm-svn: 17180
* Align function arguments in function headersMisha Brukman2004-10-231-5/+4
| | | | llvm-svn: 17178
* Fix a bug that Brian brought to my attention. This corrects:Chris Lattner2004-10-231-1/+2
| | | | | | Assembler/2004-10-22-BCWriterUndefBug.llx llvm-svn: 17177
* Kill casts from integer types to unsigned byte, when the cast was only usedNate Begeman2004-10-231-0/+13
| | | | | | | | as the shift amount operand to a shift instruction. This was causing us to emit unnecessary clear operations for code such as: int foo(int x) { return 1 << x; } llvm-svn: 17175
* Use cleaner quoting and eliminate blank spaceMisha Brukman2004-10-221-3/+3
| | | | llvm-svn: 17174
* Clean up the output from this makefile so its not verbose.Reid Spencer2004-10-221-6/+8
| | | | llvm-svn: 17173
* Adjust rules for building .inc files due to Reid's changes of Makefile.rulesMisha Brukman2004-10-221-32/+5
| | | | llvm-svn: 17169
* Adjust to changes in Makefile.rulesReid Spencer2004-10-225-143/+26
| | | | llvm-svn: 17167
* Eliminate compilation warning on uninitialized variable.Reid Spencer2004-10-221-1/+1
| | | | llvm-svn: 17163
* *** empty log message ***Chris Lattner2004-10-221-4/+47
| | | | llvm-svn: 17161
* Fix a bug Nate noticed, where we miscompiled a simple testcaseChris Lattner2004-10-221-1/+1
| | | | llvm-svn: 17157
* We won't use automakeReid Spencer2004-10-2268-24736/+0
| | | | llvm-svn: 17155
* Remove debug code emitter from the JITMisha Brukman2004-10-211-3/+1
| | | | llvm-svn: 17151
* Make this compile.Alkis Evlogimenos2004-10-211-1/+1
| | | | llvm-svn: 17150
* * Added basic support for JITing functions, basic blocks, instruction encoding,Misha Brukman2004-10-211-20/+169
| | | | | | | | 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 llvm-svn: 17149
* Don't clear or sign extend bool->int. This fires a few dozen times on the ↵Nate Begeman2004-10-201-0/+17
| | | | | | test suite llvm-svn: 17147
* Explain what this pass does.Brian Gaeke2004-10-201-1/+7
| | | | llvm-svn: 17146
* Small performance improvement in generated C code:John Criswell2004-10-201-1/+23
| | | | | | | | | | | | 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. llvm-svn: 17144
* * Add baseline structural JIT code, but disable the JIT to allow llvm-gcc buildsMisha Brukman2004-10-191-8/+175
| | | | | | | | - 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 llvm-svn: 17143
* Hrm, some people complain when the compiler cheerfully tells them what it'sChris Lattner2004-10-191-1/+0
| | | | | | doing... I guess they're right. llvm-svn: 17142
* Fix some grammarMisha Brukman2004-10-191-3/+3
| | | | llvm-svn: 17141
* Simplify mapping info generation. In particular, the LLVM-to-MachineInstr mapBrian Gaeke2004-10-191-86/+3
| | | | | | | is no longer emitted, and we do not reference any MachineCodeForInstruction information. llvm-svn: 17138
* Initial automake generated Makefile templateReid Spencer2004-10-1834-0/+23827
| | | | llvm-svn: 17136
* Initial implementation of the strength reduction for GEP instructions inNate Begeman2004-10-181-0/+251
| | | | | | | | | | | | | | | | | 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 llvm-svn: 17134
* AIX does not have mkdtemp() so emulate its behavior using mktemp() and mkdir()Misha Brukman2004-10-181-5/+10
| | | | llvm-svn: 17131
* Improve compatibility with VC++, patch contributed by Morten Ofstad!Chris Lattner2004-10-182-1/+18
| | | | llvm-svn: 17126
* Get this file compiling with VC++, patch contributed by Morten Ofstad. ↵Chris Lattner2004-10-181-0/+1
| | | | | | Thanks Morten! llvm-svn: 17125
* Correction to allow compilation with Visual C++.Reid Spencer2004-10-184-6/+8
| | | | | | Patch contributed by Morten Ofstad. Thanks Morten! llvm-svn: 17123
* Simplify code by deleting instructions that preceed unreachable instructions.Chris Lattner2004-10-181-1/+101
| | | | | | | Simplify code by simplifying terminators that branch to blocks that start with an unreachable instruction. llvm-svn: 17116
* Turn store -> null/undef into the LLVM unreachable instruction! This simpleChris Lattner2004-10-181-0/+27
| | | | | | | | 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. llvm-svn: 17111
* Turn things with obviously undefined semantics into 'store -> null'Chris Lattner2004-10-181-26/+34
| | | | llvm-svn: 17110
* My friend the invoke instruction does not dominate all basic blocks if itChris Lattner2004-10-181-1/+2
| | | | | | occurs in the entry node of a function llvm-svn: 17109
* Fix a bug that occurs when the constant value is the result of an invoke. InChris Lattner2004-10-181-5/+6
| | | | | | | particular, invoke ret values are only live in the normal dest of the invoke not in the unwind dest. llvm-svn: 17108
* Print a semicolon for the unreacahble instruction. This fixes problemsChris Lattner2004-10-171-1/+1
| | | | | | where C requires semicolons in some cases to indicate null statements. llvm-svn: 17107
* Getting ADCE to interact well with unreachable instructions seems like a ↵Chris Lattner2004-10-171-2/+3
| | | | | | | | | | | 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 llvm-svn: 17106
OpenPOWER on IntegriCloud