summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Disable NEON single-precision FP support for Cortex-A8, for now...David Goodwin2009-08-051-1/+1
| | | | llvm-svn: 78209
* Remove dead code. MDNode and MDString are not Constant anymore.Devang Patel2009-08-057-21/+0
| | | | llvm-svn: 78207
* Add memory versions of some instructions.Anton Korobeynikov2009-08-051-6/+83
| | | | | | Patch by Neale Ferguson! llvm-svn: 78203
* Rename a variable to make MSVC happy.Benjamin Kramer2009-08-051-3/+3
| | | | llvm-svn: 78202
* By default, for cortex-a8 use NEON for single-precision FP. David Goodwin2009-08-052-5/+7
| | | | llvm-svn: 78200
* Remove unnecessary ProfileInfoLoader methods.Daniel Dunbar2009-08-052-152/+20
| | | | | | - Part of optimal static profiling patch sequence by Andreas Neustifter. llvm-svn: 78199
* Special constants as destinations does not work as expected - drop the patterns.Anton Korobeynikov2009-08-051-53/+0
| | | | llvm-svn: 78191
* Alpha: Get section directives rightAndrew Lenharth2009-08-051-3/+3
| | | | llvm-svn: 78189
* Cleanup in dbg_stoppoint handling in CBE. Patch by Sandeep Patel.Anton Korobeynikov2009-08-051-7/+6
| | | | llvm-svn: 78182
* Minor arm CBE fixes. Patch by Sandeep.Anton Korobeynikov2009-08-051-2/+2
| | | | llvm-svn: 78181
* Emit module-level inline asm for CBE.Anton Korobeynikov2009-08-051-0/+48
| | | | | | Patch by Sandeep Patel llvm-svn: 78180
* Disable stack coloring with register for now. It's not able to set kill markers.Evan Cheng2009-08-051-1/+3
| | | | llvm-svn: 78179
* Another nasty coalescer bug (is there another kind):Evan Cheng2009-08-051-5/+19
| | | | | | | | | | | | | | | | After coalescing reg1027's def and kill are both at the same point: %reg1027,0.000000e+00 = [56,814:0) 0@70-(814) bb5: 60 %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0 68 %reg1027<def> = t2LDRi12 %reg1027<kill>, 8, 14, %reg0 76 t2CMPzri %reg1038<kill,undef>, 0, 14, %reg0, %CPSR<imp-def> 84 %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0 96 t2Bcc mbb<bb5,0x2030910>, 1, %CPSR<kill> Do not remove the kill marker on t2LDRi12. llvm-svn: 78178
* Remove accidental commited commentBruno Cardoso Lopes2009-08-051-2/+0
| | | | llvm-svn: 78177
* - Remove custom handling of jumptables by the elf writter (this wasBruno Cardoso Lopes2009-08-057-124/+218
| | | | | | | | | | | | a dirty hack and isn't need anymore since the last x86 code emitter patch) - Add a target-dependent modifier to addend calculation - Use R_X86_64_32S relocation for X86::reloc_absolute_word_sext - Use getELFSectionFlags whenever possible - fix getTextSection to use TLOF and emit the right text section - Handle global emission for static ctors, dtors and Type::PointerTyID - Some minor fixes llvm-svn: 78176
* 80 col violations.Evan Cheng2009-08-051-9/+15
| | | | llvm-svn: 78175
* common globals may also not be marked constant.Chris Lattner2009-08-051-3/+6
| | | | llvm-svn: 78169
* Teach X86FastISel how to handle CCValAssign::BCvt, which is used forDan Gohman2009-08-051-0/+8
| | | | | | MMX arguments. This fixes PR4684. llvm-svn: 78163
* Clarify common linkage and the requirements on it. EnforceChris Lattner2009-08-052-1/+13
| | | | | | them in the verifier. llvm-svn: 78160
* ZIV tester for LDA.Andreas Bolka2009-08-051-1/+17
| | | | llvm-svn: 78157
* expose SectionKindForGlobal to curious clients, named asChris Lattner2009-08-051-9/+8
| | | | | | getKindForGlobal. llvm-svn: 78156
* Restrict LDA to GEPs with the same pointer offset.Andreas Bolka2009-08-051-11/+27
| | | | | | | We can not simply apply ZIV testing to the pointer offsets, as this would incorrectly return independence for e.g. (GEP x,0,i; GEP x,1,-i). llvm-svn: 78155
* add a temporary hook to allow reuse of the asmprinter from the disassembler.Chris Lattner2009-08-051-0/+3
| | | | llvm-svn: 78154
* Turn some insert_subreg, extract_subreg, subreg_to_reg into implicit_defs.Evan Cheng2009-08-052-5/+28
| | | | llvm-svn: 78151
* Oops. I didn't mean to commit this piece yet.Bob Wilson2009-08-051-2/+0
| | | | llvm-svn: 78146
* One more. Transfer kill of the larger register when lowering an EXTRACT_SUBREG.Evan Cheng2009-08-051-4/+6
| | | | llvm-svn: 78145
* One more place where subreg lowering forgot to transfer undefness.Evan Cheng2009-08-051-3/+6
| | | | llvm-svn: 78144
* Major calling convention code refactoring.Dan Gohman2009-08-0541-2037/+1948
| | | | | | | | | | | | | | | | | | | Instead of awkwardly encoding calling-convention information with ISD::CALL, ISD::FORMAL_ARGUMENTS, ISD::RET, and ISD::ARG_FLAGS nodes, TargetLowering provides three virtual functions for targets to override: LowerFormalArguments, LowerCall, and LowerRet, which replace the custom lowering done on the special nodes. They provide the same information, but in a more immediately usable format. This also reworks much of the target-independent tail call logic. The decision of whether or not to perform a tail call is now cleanly split between target-independent portions, and the target dependent portion in IsEligibleForTailCallOptimization. This also synchronizes all in-tree targets, to help enable future refactoring and feature work. llvm-svn: 78142
* If the insert_subreg source is <undef>, insert an implicit_def instead of a ↵Evan Cheng2009-08-051-2/+8
| | | | | | copy. llvm-svn: 78141
* Various comment fixes.Dan Gohman2009-08-051-3/+8
| | | | llvm-svn: 78139
* Remove an unnecessary flush in the CppBackend's output.Dan Gohman2009-08-051-1/+0
| | | | llvm-svn: 78138
* Don't flush the raw_ostream between each MachineFunction. These flushDan Gohman2009-08-056-12/+0
| | | | | | | | | | | calls were originally put in place because errs() at one time was not unbuffered, and these print routines are commonly used with errs() for debugging. However, errs() is now properly unbuffered, so the flush calls are no longer needed. This significantly reduces the number of write(2) calls for regular asm printing when there are many small functions. llvm-svn: 78137
* Change DAG nodes for Neon VLD2/3/4 operations to return multiple results.Bob Wilson2009-08-054-31/+108
| | | | | | | | | Get rid of yesterday's code to fix the register usage during isel. Select the new DAG nodes to machine instructions. The new pre-alloc pass to choose adjacent registers for these results is not done, so the results of this will generally not assemble yet. llvm-svn: 78136
* cerr isn't buffered so it doesn't need to be flushed.Dan Gohman2009-08-051-3/+3
| | | | llvm-svn: 78135
* Remove needless uses of std::flush in the parent process after aDan Gohman2009-08-051-7/+0
| | | | | | | fork call. This eliminates a need for <iostream>. Also remove needless fsync calls. llvm-svn: 78131
* Privatize the PointerType factory.Owen Anderson2009-08-052-6/+9
| | | | llvm-svn: 78130
* 1) Proper emit displacements for x86, using absolute relocations where necessaryBruno Cardoso Lopes2009-08-053-31/+56
| | | | | | | | | | for ELF to work. 2) RIP addressing: Use SIB bytes for absolute relocations where RegBase=0, IndexReg=0. 3) The JIT can get the real address of cstpools and jmptables during code emission, fix that for object code emission llvm-svn: 78129
* Use _exit rather than exit in the child process after a failed exec.Dan Gohman2009-08-051-3/+7
| | | | | | Add a comment explaining why. llvm-svn: 78128
* Make ExecutionEngine::updateGlobalMapping(GV, NULL) properly remove GV's oldJeffrey Yasskin2009-08-041-1/+1
| | | | | | address from the reverse mapping, and add a test that this works now. llvm-svn: 78127
* Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode.Evan Cheng2009-08-043-9/+8
| | | | llvm-svn: 78126
* Privatize the VectorType uniquing.Owen Anderson2009-08-042-6/+9
| | | | llvm-svn: 78125
* Begin the process of privatizing the type uniquing tables. No API changes ↵Owen Anderson2009-08-043-427/+440
| | | | | | yet, but there will be in the near future. llvm-svn: 78122
* Check for !isa<Constant> instead of isa<Instruction>. ThisDan Gohman2009-08-041-1/+1
| | | | | | | matches what the comment says, and it avoids spurious BitCast instructions for Argument values. llvm-svn: 78121
* Follow Unix behavior and return 127 if the command is not found,Dan Gohman2009-08-041-1/+1
| | | | | | and 126 if it is not executable. llvm-svn: 78120
* revert r78048, it isn't worth using assertingvh here.Chris Lattner2009-08-042-9/+9
| | | | llvm-svn: 78119
* Update CMakeLists.Benjamin Kramer2009-08-041-1/+0
| | | | llvm-svn: 78118
* It helps if I remember to actually add the file...Owen Anderson2009-08-041-0/+774
| | | | llvm-svn: 78116
* Factor some of the constants+context related code out into a separate ↵Owen Anderson2009-08-047-802/+24
| | | | | | | | header, to make LLVMContextImpl.h not hideous. Also, fix some MSVC compile errors. llvm-svn: 78115
* Replace dregsingle operand modifier with explicit escaped curly brackets.Bob Wilson2009-08-042-4/+2
| | | | | | | For other VLDn and VSTn operations, we need to list the multiple registers explicitly anyway, so there's no point in special-casing this one usage. llvm-svn: 78109
* Clean up the handling of two-address operands in RegScavenger.Jakob Stoklund Olesen2009-08-041-12/+3
| | | | | | This fixes PR4528. llvm-svn: 78107
OpenPOWER on IntegriCloud