Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | CMake: Builds all targets. | Oscar Fuentes | 2008-09-26 | 13 | -42/+226 | |
| | | | | llvm-svn: 56641 | |||||
* | Disable support for x86_f80 in X86FastISel. Supporting it would | Dan Gohman | 2008-09-26 | 1 | -9/+6 | |
| | | | | | | require more work. llvm-svn: 56637 | |||||
* | If we have a function with an unreachable statement such that the ending debug | Bill Wendling | 2008-09-26 | 3 | -4/+4 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | information is in an unreachable block, then it's possible that the high/low pc values won't be set for the dwarf information. E.g., this function: void abort(void) __attribute__((__noreturn__)); void dead_beef(void) __attribute__ ((noreturn)); int *b; void dead_beef(void) { *b=0xdeadbeef; abort(); } has a call to "@llvm.dbg.region.end" only in the unreachable block: define void @dead_beef() noreturn nounwind { entry: call void @llvm.dbg.func.start(...) call void @llvm.dbg.stoppoint(...) ... call void @abort( ) noreturn nounwind unreachable return: ; No predecessors! call void @llvm.dbg.stoppoint(...) call void @llvm.dbg.region.end(...) ret void } The dwarf information emitted is something like: 0x00000084: TAG_subprogram [5] AT_name( "dead_beef" ) AT_external( 0x01 ) AT_prototyped( 0x01 ) AT_decl_file( 0x01 ) AT_decl_line( 0x08 ) Note that this is *not* the best fix for this problem, but a band-aid for an gaping wound. This code needs to be changed when we revamp our debugging information. llvm-svn: 56628 | |||||
* | Prefer movlhps over punpcklqdq, etc. in more cases. | Evan Cheng | 2008-09-25 | 1 | -5/+5 | |
| | | | | llvm-svn: 56627 | |||||
* | Fix a bug in which address displacements were being added to the | Dan Gohman | 2008-09-25 | 1 | -1/+9 | |
| | | | | | | load from the stub, instead of the result of the load from the stub. llvm-svn: 56626 | |||||
* | Large mechanical patch. | Devang Patel | 2008-09-25 | 7 | -72/+72 | |
| | | | | | | | | | | | | | | | s/ParamAttr/Attribute/g s/PAList/AttrList/g s/FnAttributeWithIndex/AttributeWithIndex/g s/FnAttr/Attribute/g This sets the stage - to implement function notes as function attributes and - to distinguish between function attributes and return value attributes. This requires corresponding changes in llvm-gcc and clang. llvm-svn: 56622 | |||||
* | Reapply 56585:56589 with proper fix for some gcc versions | Anton Korobeynikov | 2008-09-25 | 9 | -183/+221 | |
| | | | | llvm-svn: 56621 | |||||
* | With sse3 and when the source is a load or has multiple uses, favors movddup ↵ | Evan Cheng | 2008-09-25 | 3 | -17/+97 | |
| | | | | | | over shuffp*, pshufd, etc. Without sse3 or when the source is from a register, make use of movlhps llvm-svn: 56620 | |||||
* | Accept 'inreg' attribute on x86 functions as | Dale Johannesen | 2008-09-25 | 1 | -4/+8 | |
| | | | | | | | | meaning sse_regparm (i.e. float/double values go in XMM0 instead of ST0). Update documentation to reflect reality. llvm-svn: 56619 | |||||
* | PIC support in X86FastISel. | Dan Gohman | 2008-09-25 | 1 | -10/+57 | |
| | | | | llvm-svn: 56608 | |||||
* | Temporarily backing out 56585:56589 to unbreak the build. | Evan Cheng | 2008-09-25 | 9 | -210/+183 | |
| | | | | llvm-svn: 56607 | |||||
* | pmovsxbq etc. requires sse4.1. | Evan Cheng | 2008-09-25 | 1 | -6/+6 | |
| | | | | llvm-svn: 56600 | |||||
* | Fix patterns for SSE4.1 move and sign extend instructions. Also add ↵ | Evan Cheng | 2008-09-24 | 2 | -6/+86 | |
| | | | | | | instructions which fold VZEXT_MOVL and VZEXT_LOAD. llvm-svn: 56594 | |||||
* | X86ISD::VZEXT_LOAD should produce and fold a chain. | Evan Cheng | 2008-09-24 | 1 | -10/+14 | |
| | | | | llvm-svn: 56593 | |||||
* | Minor cleanup | Anton Korobeynikov | 2008-09-24 | 4 | -0/+10 | |
| | | | | llvm-svn: 56588 | |||||
* | Get rid of virtual inheritance for ARM TAI | Anton Korobeynikov | 2008-09-24 | 3 | -33/+40 | |
| | | | | llvm-svn: 56587 | |||||
* | Get rid of virtual inheritance for PPC TAI | Anton Korobeynikov | 2008-09-24 | 2 | -24/+23 | |
| | | | | llvm-svn: 56586 | |||||
* | Use crazy template-based inheritance instead of virtual one. | Anton Korobeynikov | 2008-09-24 | 4 | -127/+138 | |
| | | | | llvm-svn: 56585 | |||||
* | Get rid of ReadOnlySection duplicate | Anton Korobeynikov | 2008-09-24 | 7 | -23/+15 | |
| | | | | llvm-svn: 56582 | |||||
* | Use named sections, where they should be | Anton Korobeynikov | 2008-09-24 | 1 | -7/+5 | |
| | | | | llvm-svn: 56581 | |||||
* | Get rid of now unused {Four,Eight,Sixteen}ByteConstantSection | Anton Korobeynikov | 2008-09-24 | 7 | -35/+11 | |
| | | | | llvm-svn: 56580 | |||||
* | Cleanup | Anton Korobeynikov | 2008-09-24 | 2 | -2/+2 | |
| | | | | llvm-svn: 56578 | |||||
* | Get rid of duplicate char*/Section* stuff for TLS sections | Anton Korobeynikov | 2008-09-24 | 3 | -11/+7 | |
| | | | | llvm-svn: 56577 | |||||
* | Cleanup, no functionality change | Anton Korobeynikov | 2008-09-24 | 2 | -4/+4 | |
| | | | | llvm-svn: 56576 | |||||
* | Get rid of duplicate char*/Section* DataSection | Anton Korobeynikov | 2008-09-24 | 6 | -11/+9 | |
| | | | | llvm-svn: 56575 | |||||
* | Get rid of duplicate char*/Section* TextSection | Anton Korobeynikov | 2008-09-24 | 5 | -10/+8 | |
| | | | | llvm-svn: 56574 | |||||
* | Move actual section printing stuff to AsmPrinter from TAI reducing heap traffic. | Anton Korobeynikov | 2008-09-24 | 9 | -33/+18 | |
| | | | | llvm-svn: 56573 | |||||
* | Drop obsolete hook and change all usage to new interface | Anton Korobeynikov | 2008-09-24 | 11 | -85/+7 | |
| | | | | llvm-svn: 56572 | |||||
* | SPU section handling is really huge mess. Replace remaining TAI calls for ↵ | Anton Korobeynikov | 2008-09-24 | 1 | -2/+2 | |
| | | | | | | sections with explicit names in order not to block existing backends during section handling migration. SPU folks! Please consider using new section handling facility someday. llvm-svn: 56570 | |||||
* | Remove dead code for PIC16 (preparation to switch to new section handling stuff) | Anton Korobeynikov | 2008-09-24 | 1 | -11/+1 | |
| | | | | llvm-svn: 56569 | |||||
* | XMM6-XMM15 are callee-saved on Win64. Patch by Nicolas Capens! | Anton Korobeynikov | 2008-09-24 | 1 | -6/+14 | |
| | | | | llvm-svn: 56568 | |||||
* | s/ParamAttrsWithIndex/FnAttributeWithIndex/g | Devang Patel | 2008-09-24 | 1 | -2/+2 | |
| | | | | llvm-svn: 56535 | |||||
* | Put FN_NOTE_AlwaysInline and others in FnAttr namespace. | Devang Patel | 2008-09-24 | 2 | -2/+2 | |
| | | | | llvm-svn: 56527 | |||||
* | Properly handle 'm' inline asm constraints. If a GV is being selected for ↵ | Evan Cheng | 2008-09-24 | 7 | -18/+36 | |
| | | | | | | the addressing mode, it requires the same logic for PIC relative addressing, etc. llvm-svn: 56526 | |||||
* | Move FN_NOTE_AlwaysInline and other out of ParamAttrs namespace. | Devang Patel | 2008-09-23 | 2 | -2/+2 | |
| | | | | | | Do not check isDeclaration() in hasNote(). It is clients' responsibility. llvm-svn: 56524 | |||||
* | s/ParameterAttributes/Attributes/g | Devang Patel | 2008-09-23 | 3 | -3/+1 | |
| | | | | llvm-svn: 56513 | |||||
* | Use parameter attribute store (soon to be renamed) for | Devang Patel | 2008-09-23 | 2 | -2/+2 | |
| | | | | | | Function Notes also. Function notes are stored at index ~0. llvm-svn: 56511 | |||||
* | Arrange for FastISel code to have access to the MachineModuleInfo | Dan Gohman | 2008-09-23 | 3 | -3/+8 | |
| | | | | | | object. This will be needed to support debug info. llvm-svn: 56508 | |||||
* | Fix these enums' starting values to reflect the way that | Dan Gohman | 2008-09-23 | 9 | -9/+9 | |
| | | | | | | instruction opcodes are now numbered. No functionality change. llvm-svn: 56497 | |||||
* | Delete an unused function. | Dan Gohman | 2008-09-23 | 1 | -10/+0 | |
| | | | | llvm-svn: 56495 | |||||
* | Move the code for initializing the global base reg out of | Dan Gohman | 2008-09-23 | 3 | -29/+43 | |
| | | | | | | | X86ISelDAGToDAG.cpp and into X86InstrInfo.cpp. This will allow it to be reused by FastISel. llvm-svn: 56494 | |||||
* | Fix indendation. | Matthijs Kooijman | 2008-09-23 | 1 | -4/+4 | |
| | | | | llvm-svn: 56486 | |||||
* | Support x86 specific inline asm modifier 'J'. | Evan Cheng | 2008-09-22 | 1 | -0/+8 | |
| | | | | llvm-svn: 56483 | |||||
* | Add hasNote() to check note associated with a function. | Devang Patel | 2008-09-22 | 2 | -2/+2 | |
| | | | | llvm-svn: 56477 | |||||
* | Instead of setPreservesAll, just mark them preseving machine loop info and ↵ | Evan Cheng | 2008-09-22 | 1 | -1/+2 | |
| | | | | | | machine dominators. llvm-svn: 56475 | |||||
* | Make log, log2, log10, exp, exp2 use Expand by | Dale Johannesen | 2008-09-22 | 7 | -71/+0 | |
| | | | | | | default. llvm-svn: 56471 | |||||
* | Mark several codegen passes as preserving all analysis. | Evan Cheng | 2008-09-22 | 1 | -0/+5 | |
| | | | | llvm-svn: 56469 | |||||
* | CMake build system: support for parallel builds. | Oscar Fuentes | 2008-09-22 | 2 | -1/+6 | |
| | | | | llvm-svn: 56453 | |||||
* | Change the calling convention used when tail call optimization is enabled ↵ | Arnold Schwaighofer | 2008-09-22 | 3 | -22/+2 | |
| | | | | | | from CC_X86_32_TailCall to CC_X86_32_FastCC. llvm-svn: 56436 | |||||
* | Initial support for the CMake build system. | Oscar Fuentes | 2008-09-22 | 3 | -0/+80 | |
| | | | | llvm-svn: 56419 |