summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86ATTAsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix .eh table linkage issues on Darwin. Some EH supportDale Johannesen2007-11-201-1/+1
| | | | | | for Darwin PPC, but it's not fully working yet. llvm-svn: 44258
* Oops. Debugging code shouldn't have been checked in.Evan Cheng2007-11-141-9/+0
| | | | llvm-svn: 44128
* Fix PIC jump table codegen on x86-32/linux. In fact, such thing should be ↵Anton Korobeynikov2007-11-141-1/+28
| | | | | | | | applied to all targets uses GOT-relative offsets for PIC (Alpha?) llvm-svn: 44108
* Clean up sub-register implementation by moving subReg information back toEvan Cheng2007-11-141-0/+9
| | | | | | | | | | | MachineOperand auxInfo. Previous clunky implementation uses an external map to track sub-register uses. That works because register allocator uses a new virtual register for each spilled use. With interval splitting (coming soon), we may have multiple uses of the same register some of which are of using different sub-registers from others. It's too fragile to constantly update the information. llvm-svn: 44104
* Unbreak x86-64 jumptable.Evan Cheng2007-11-091-1/+5
| | | | llvm-svn: 43955
* Much improved pic jumptable codegen:Evan Cheng2007-11-091-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Then: call "L1$pb" "L1$pb": popl %eax ... LBB1_1: # entry imull $4, %ecx, %ecx leal LJTI1_0-"L1$pb"(%eax), %edx addl LJTI1_0-"L1$pb"(%ecx,%eax), %edx jmpl *%edx .align 2 .set L1_0_set_3,LBB1_3-LJTI1_0 .set L1_0_set_2,LBB1_2-LJTI1_0 .set L1_0_set_5,LBB1_5-LJTI1_0 .set L1_0_set_4,LBB1_4-LJTI1_0 LJTI1_0: .long L1_0_set_3 .long L1_0_set_2 Now: call "L1$pb" "L1$pb": popl %eax ... LBB1_1: # entry addl LJTI1_0-"L1$pb"(%eax,%ecx,4), %eax jmpl *%eax .align 2 .set L1_0_set_3,LBB1_3-"L1$pb" .set L1_0_set_2,LBB1_2-"L1$pb" .set L1_0_set_5,LBB1_5-"L1$pb" .set L1_0_set_4,LBB1_4-"L1$pb" LJTI1_0: .long L1_0_set_3 .long L1_0_set_2 llvm-svn: 43924
* Fix PR1761 by not printing (rip) suffix when in -static mode.Chris Lattner2007-11-041-1/+2
| | | | | | Evan, please review this. llvm-svn: 43680
* Add support for the x86-64 'q' regigster modifier, and add support for theChris Lattner2007-10-291-2/+18
| | | | | | | b/h/w/k/q inline asm memory modifiers, which are just ignored. This fixes PR1748 and CodeGen/X86/2007-10-28-inlineasm-q-modifier.ll llvm-svn: 43430
* Revert 42908 for now.Evan Cheng2007-10-141-15/+15
| | | | llvm-svn: 42960
* Change the names used for internal labels to use the currentDan Gohman2007-10-121-15/+15
| | | | | | | | | function symbol name instead of a codegen-assigned function number. Thanks Evan! :-) llvm-svn: 42908
* Change a space to a tab in the assembly output of a .globl directiveDan Gohman2007-10-051-1/+1
| | | | | | for consistency. llvm-svn: 42637
* Use empty() member functions when that's what's being tested for insteadDan Gohman2007-10-031-1/+1
| | | | | | of comparing begin() and end(). llvm-svn: 42585
* Remove isReg, isImm, and isMBB, and change all their users to use Dan Gohman2007-09-141-1/+1
| | | | | | | isRegister, isImmediate, and isMachineBasicBlock, which are equivalent, and more popular. llvm-svn: 41958
* The personality function on Darwin needs a global stub. We then refer toBill Wendling2007-09-111-1/+2
| | | | | | that global stub instead of doing the ".set" thingy we were doing before. llvm-svn: 41838
* Change a .size directive to use a tab instead of a space, for consistency.Dan Gohman2007-08-011-1/+1
| | | | llvm-svn: 40672
* Use tabs more consistently in assembler pseudo-ops.Dan Gohman2007-07-301-2/+2
| | | | llvm-svn: 40594
* Change the x86 backend to use extract_subreg for truncation operations. ↵Christopher Lamb2007-07-291-23/+0
| | | | | | Passes DejaGnu, SingleSource and MultiSource. llvm-svn: 40578
* Mac OS X should use 0x90 to fill in gaps to satisfy function alignment ↵Evan Cheng2007-07-251-3/+12
| | | | | | requirements. llvm-svn: 40501
* Functions with LinkOnce and weak linkage still need to be aligned. Doh.Evan Cheng2007-07-251-0/+1
| | | | llvm-svn: 40499
* Delete the svn:executable property on these files, which aren't executable.Dan Gohman2007-07-231-0/+0
| | | | llvm-svn: 40441
* Say AT&T instead of Intel in the comments for AT&T support.Dan Gohman2007-06-251-2/+2
| | | | llvm-svn: 37716
* Eliminate some redundant newlines in asm output.Dan Gohman2007-06-141-2/+2
| | | | llvm-svn: 37574
* Misuse of hasExternalLinkage(), should be checking isDeclaration().Evan Cheng2007-06-041-2/+2
| | | | llvm-svn: 37419
* Emit sections/directives in the proper order. This fixes PR1376. Also,Anton Korobeynikov2007-05-051-15/+6
| | | | | | some small cleanup was made. llvm-svn: 36780
* Implement protected visibility. This partly implements PR1363. LinkerAnton Korobeynikov2007-04-291-2/+7
| | | | | | should be taught to deal with protected symbols. llvm-svn: 36565
* Fix PR1339 and CodeGen/X86/dollar-name.llDan Gohman2007-04-261-3/+32
| | | | llvm-svn: 36495
* X86 TLS: fix and optimize the implementation of "initial exec" model.Lauro Ramos Venancio2007-04-221-1/+1
| | | | llvm-svn: 36355
* Implement "general dynamic", "initial exec" and "local exec" TLS models forLauro Ramos Venancio2007-04-201-2/+14
| | | | | | X86 32 bits. llvm-svn: 36283
* rename X86FunctionInfo to X86MachineFunctionInfo to match the header fileChris Lattner2007-04-171-1/+1
| | | | | | it is defined in. llvm-svn: 36196
* Allow the b/h/w/k constraints to be applied to values that have multiple ↵Chris Lattner2007-03-251-1/+4
| | | | | | alternatives, and end up not being registers. llvm-svn: 35320
* Fix test/CodeGen/X86/2007-03-24-InlineAsmPModifier.llChris Lattner2007-03-251-0/+4
| | | | llvm-svn: 35318
* External weak linkage is supported by recent binutils on mingw32.Anton Korobeynikov2007-02-231-1/+1
| | | | llvm-svn: 34519
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-301-3/+3
| | | | | | confusion with external linkage types. llvm-svn: 33663
* Change the MachineDebugInfo to MachineModuleInfo to better reflect usageJim Laskey2007-01-261-2/+2
| | | | | | for debugging and exception handling. llvm-svn: 33550
* Fix test/CFrontend/2007-01-24-InlineAsmCModifier.c on X86. The %c modifierChris Lattner2007-01-251-2/+3
| | | | | | says that no $ prefix should be emitted on X86. llvm-svn: 33495
* - Target PIC style is no longer affected by relocation model.Evan Cheng2007-01-181-34/+40
| | | | | | | | - In x86-64 mode, symbols with external linkage (not just symbols which are defined externally) requires GOT indirect reference. - Stylistic code clean up. llvm-svn: 33345
* Minor code clean up.Evan Cheng2007-01-181-17/+20
| | | | llvm-svn: 33323
* * Fix one more bug in PIC codegen: extra load is needed for *all*Anton Korobeynikov2007-01-171-13/+10
| | | | | | | | | non-statics. * Introduce new option to output zero-initialized data to .bss section. This can reduce size of binaries. Enable it by default for ELF & Cygwin/Mingw targets. Probably, Darwin should be also added. llvm-svn: 33299
* Emit symbol type information for ELF/COFF targetsAnton Korobeynikov2007-01-161-5/+22
| | | | llvm-svn: 33256
* add support for hidden visibility to darwin/x86Chris Lattner2007-01-141-2/+3
| | | | llvm-svn: 33198
* add a missing else. This caused globals to be printed as:Chris Lattner2007-01-141-1/+1
| | | | | | | | | movq ___dso_handle@GOTPCREL(%rip)(%rip), %rsi instead of: movq ___dso_handle@GOTPCREL(%rip), %rsi llvm-svn: 33196
* darwin doesn't use .hidden. Disable this until we fix it right.Chris Lattner2007-01-141-1/+1
| | | | llvm-svn: 33191
* Fix PR1103 and Regression/CodeGen/X86/2007-01-13-StackPtrIndex.llChris Lattner2007-01-141-9/+17
| | | | llvm-svn: 33189
* remove dead code, frameindices must be resolve before the asmprinter runs.Chris Lattner2007-01-131-8/+0
| | | | llvm-svn: 33187
* * PIC codegen for X86/Linux has been implementedAnton Korobeynikov2007-01-121-25/+84
| | | | | | | | * PIC-aware internal structures in X86 Codegen have been refactored * Visibility (default/weak) has been added * Docs fixes (external weak linkage, visibility, formatting) llvm-svn: 33136
* As PR1085 was fixed, back out workaroundAnton Korobeynikov2007-01-071-6/+1
| | | | llvm-svn: 32969
* gcc often inserts it's own names for sections (e.g.Anton Korobeynikov2007-01-061-2/+7
| | | | | | | gnu.linkonce.t.FunctionName). Convert them to "normal" LLVM names, otherwise linker won't be able to merge them. llvm-svn: 32958
* Really big cleanup.Anton Korobeynikov2007-01-031-6/+6
| | | | | | | | | | | - New target type "mingw" was introduced - Same things for both mingw & cygwin are marked as "cygming" (as in gcc) - .lcomm is supported here, so allow LLVM to use it - Correctly use underscored versions of setjmp & _longjmp for both mingw & cygwin llvm-svn: 32833
* eliminate static ctors for Statistic objects.Chris Lattner2006-12-191-0/+4
| | | | llvm-svn: 32703
* move ExtWeakSymbols to AsmPrinterRafael Espindola2006-12-181-1/+1
| | | | llvm-svn: 32648
OpenPOWER on IntegriCloud