History log of /external/llvm/lib/Target/X86/X86AsmPrinter.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1dc2591e9ef0730612902f94976ce85bed6859de 11-Sep-2012 Chad Rosier <mcrosier@apple.com> Revert r163556. Missed updates to tablegen files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
16c55845484311d9b64b7f87a3c025caeb5cdabb 11-Sep-2012 Chad Rosier <mcrosier@apple.com> Update function names to conform to guidelines. No functional change intended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3b132fab0bebe7186348d7ab0e2663c9fddab3bb 10-Sep-2012 Chad Rosier <mcrosier@apple.com> [ms-inline asm] Pass the correct AsmVariant to the PrintAsmOperand() function
and update the printOperand() function accordingly.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0bcbd1df7a204e1e512f1a27066d725309de1b13 28-Jun-2012 Bill Wendling <isanbard@gmail.com> Move lib/Analysis/DebugInfo.cpp to lib/VMCore/DebugInfo.cpp and
include/llvm/Analysis/DebugInfo.h to include/llvm/DebugInfo.h.

The reasoning is because the DebugInfo module is simply an interface to the
debug info MDNodes and has nothing to do with analysis.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159312 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0518fca843ff87d069ecb07fc00d306c1f587d58 26-Jun-2012 Jack Carter <jcarter@mips.com> There are a number of generic inline asm operand modifiers that
up to r158925 were handled as processor specific. Making them
generic and putting tests for these modifiers in the CodeGen/Generic
directory caused a number of targets to fail.

This commit addresses that problem by having the targets call
the generic routine for generic modifiers that they don't currently
have explicit code for.

For now only generic print operands 'c' and 'n' are supported.vi


Affected files:

test/CodeGen/Generic/asm-large-immediate.ll
lib/Target/PowerPC/PPCAsmPrinter.cpp
lib/Target/NVPTX/NVPTXAsmPrinter.cpp
lib/Target/ARM/ARMAsmPrinter.cpp
lib/Target/XCore/XCoreAsmPrinter.cpp
lib/Target/X86/X86AsmPrinter.cpp
lib/Target/Hexagon/HexagonAsmPrinter.cpp
lib/Target/CellSPU/SPUAsmPrinter.cpp
lib/Target/Sparc/SparcAsmPrinter.cpp
lib/Target/MBlaze/MBlazeAsmPrinter.cpp
lib/Target/Mips/MipsAsmPrinter.cpp

MSP430 isn't represented because it did not even run with
the long existing 'c' modifier and it was not apparent what
needs to be done to get it inline asm ready.

Contributer: Jack Carter



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f0234fcbc9be9798c10dedc3e3c134b7afbc6511 01-Jun-2012 Hans Wennborg <hans@hanshq.net> Implement the local-dynamic TLS model for x86 (PR3985)

This implements codegen support for accesses to thread-local variables
using the local-dynamic model, and adds a clean-up pass so that the base
address for the TLS block can be re-used between local-dynamic access on
an execution path.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
228756c744a1f877f7150c8fc91e074ff58c9d66 11-May-2012 Hans Wennborg <hans@hanshq.net> Implement initial-exec TLS model for 32-bit PIC x86

This fixes a TODO from 2007 :) Previously, LLVM would emit the wrong
code here (see the update to test/CodeGen/X86/tls-pie.ll).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
769bbfd951018f9b36f3d2f0d70a23d81f2d3287 03-Apr-2012 Craig Topper <craig.topper@gmail.com> Add support for AVX enhanced comparison predicates. Patch from Kay Tiong Khoo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153935 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
79aa3417eb6f58d668aadfedf075240a41d35a26 17-Mar-2012 Craig Topper <craig.topper@gmail.com> Reorder includes in Target backends to following coding standards. Remove some superfluous forward declarations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152997 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c9c137b463b953fbf8942f655d67f6dc1a0f7965 22-Feb-2012 Michael J. Spencer <bigcheesegs@gmail.com> Properly emit _fltused with FastISel. Refactor to share code with SDAG.
Patch by Joe Groff!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d4a19b6a72d19a6f90b676aac37118664b7b7a84 11-Feb-2012 Anton Korobeynikov <asl@math.spbu.ru> Add support for implicit TLS model used with MS VC runtime.
Patch by Kai Nacke!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f602040c4900d89bbf55478420769e36604588fb 08-Feb-2012 Elena Demikhovsky <elena.demikhovsky@intel.com> Fixed a bug in printing "cmp" pseudo ops.
> This IR code
> %res = call <8 x float> @llvm.x86.avx.cmp.ps.256(<8 x float> %a0, <8 x float> %a1, i8 14)
> fails with assertion:
>
> llc: X86ATTInstPrinter.cpp:62: void llvm::X86ATTInstPrinter::printSSECC(const llvm::MCInst*, unsigned int, llvm::raw_ostream&): Assertion `0 && "Invalid ssecc argument!"' failed.
> 0 llc 0x0000000001355803
> 1 llc 0x0000000001355dc9
> 2 libpthread.so.0 0x00007f79a30575d0
> 3 libc.so.6 0x00007f79a23a1945 gsignal + 53
> 4 libc.so.6 0x00007f79a23a2f21 abort + 385
> 5 libc.so.6 0x00007f79a239a810 __assert_fail + 240
> 6 llc 0x00000000011858d5 llvm::X86ATTInstPrinter::printSSECC(llvm::MCInst const*, unsigned int, llvm::raw_ostream&) + 119

I added the full testing for all possible pseudo-ops of cmp.
I extended X86AsmPrinter.cpp and X86IntelInstPrinter.cpp.

You'l also see lines alignments (unrelated to this fix) in X86IselLowering.cpp from my previous check-in.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150068 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
cda2a146d1fcf3f499a1aa535377fb332e918bd5 30-Aug-2011 Jeffrey Yasskin <jyasskin@google.com> Fix C++0x narrowing errors when char is unsigned.

In the case of EDInstInfo, this would actually cause a bug when -1 became 255
and was then compared >=0 in llvm-mc/Disassembler.cpp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138825 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3e74d6fdd248e20a280f1dff3da9a6c689c2c4c3 24-Aug-2011 Evan Cheng <evan.cheng@apple.com> Move TargetRegistry and TargetSelect from Target to Support where they belong.
These are strictly utilities for registering targets and components.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4b64e8a9e13ba782da2034e1dee52f077bdb759c 25-Jul-2011 Evan Cheng <evan.cheng@apple.com> Separate MCInstPrinter registration from AsmPrinter registration.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135974 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b262799d49891b036daa00eddf51947487346c98 06-Jul-2011 Evan Cheng <evan.cheng@apple.com> createMCInstPrinter doesn't need TargetMachine anymore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134525 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a5c177e70a42f48e4885075c4c48aad0816a2817 21-Mar-2011 Bill Wendling <isanbard@gmail.com> We need to pass the TargetMachine object to the InstPrinter if we are printing
the alias of an InstAlias instead of the thing being aliased. Because we need to
know the features that are valid for an InstAlias.

This is part of a work-in-progress.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2bffee2ee725047137d2523e31db9ecc7b246cbb 01-Feb-2011 Evan Cheng <evan.cheng@apple.com> Patches to build EFI with Clang/LLVM. By Carl Norum.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124639 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
03277e7fb4d12f0d15dc2c97787fc89ecdaecf94 01-Jan-2011 Rafael Espindola <rafael.espindola@gmail.com> Add support for the 'H' modifier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
142b531e024c7b814df74951b378b9e3e11d0d42 14-Nov-2010 Chris Lattner <sabre@nondot.org> move the pic base symbol stuff up to MachineFunction
since it is trivial and will be shared between ppc and x86.
This substantially simplifies the X86 backend also.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119089 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4fd0ea01660d7e447f072a1032abf0d7537821bf 14-Nov-2010 Chris Lattner <sabre@nondot.org> simplify getPICBaseSymbol a bit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119088 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a29aae7aca6d8b9a9e95238d7e4067d8c16b0079 12-Nov-2010 Chris Lattner <sabre@nondot.org> tidy up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c527407010fadcbca0bc394ada311f2122df2bc0 23-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> X86: Emit _fltused instead of __fltused on Windows x64.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
dd0a00a6e377b11c3c122e111da3d1f53f13756d 21-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> CodeGen-Windows: Only emit _fltused if a VarArg function is called with floating point args.
This should be the minimum set of functions that could possibly need it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
84ac4d5a2a8fd0e6f95ec46088c0ca7bb63423ac 16-Oct-2010 Michael J. Spencer <bigcheesegs@gmail.com> X86-Windows: Emit an undefined global __fltused symbol when targeting Windows
if any floating point arguments are passed to an external function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7ac1609a3b81504d269bf967060241c309771f23 02-Oct-2010 Jim Grosbach <grosbach@apple.com> Rename the AsmPrinter directory to InstPrinter for those targets that have
been MC-ized for assembly printing. MSP430 is mostly so, but still has the
asm printer and lowering code in the printer subdir for the moment.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
22854b777e37b07d65376bedeeab004f68d5ca5d 15-Sep-2010 Jim Grosbach <grosbach@apple.com> trailing whitespace

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5c1d941f00a3cdb4bdcefa95b4ff34ae8922cf15 04-Aug-2010 Devang Patel <dpatel@apple.com> Add DEBUG message.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1a34c83cafbeee42886c7a45dd31892c0747682e 21-Jul-2010 Chris Lattner <sabre@nondot.org> move two asmprinter methods into the asmprinter .cpp file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
aef40351f67ce6be3888450836d44ca4e0afd487 20-Jul-2010 Chris Lattner <sabre@nondot.org> fix a layering problem by moving the x86 implementation
of AsmPrinter and InstLowering into libx86 and out of the
asmprinter subdirectory. Now X86/AsmPrinter just depends on
MC stuff, not all of codegen and LLVM IR.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3c3bc48d331db26aaff3ff4f7a61f60a17fea112 17-Aug-2008 Anton Korobeynikov <asl@math.spbu.ru> Move X86 assembler printers into separate directory. This allows JIT-only users not to link it in (use 'x86codegen' llvm-config arg for this)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
75b6882d3cb306d634a854cc97435397ce348938 28-Jun-2008 Anton Korobeynikov <asl@math.spbu.ru> Remove X86SharedAsmPrinter

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9136438b08c99ea6d6db6eca10626b730f4a5b52 28-Jun-2008 Anton Korobeynikov <asl@math.spbu.ru> whitespace cleanup

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8573986f3043bb9ed3754464dc0dabed0434b914 27-Jun-2008 Anton Korobeynikov <asl@math.spbu.ru> Use StringSet instead of std::set<std::string>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
bbcb34cafb1da98ff4bdb097020d252216c7627c 23-May-2008 Dale Johannesen <dalej@apple.com> Put const weak stuff in appropriate section on Darwin.
g++.dg/abi/key2.C



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51458 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c215b3ef5d9627f5fb6fe9034e46bc29ae592916 19-May-2008 Dale Johannesen <dalej@apple.com> Handle quoted names when constructing $stub's,
$non_lazy_ptr's and $lazy_ptr's.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f88c81e332a46e1e41761577067d5597535b06b9 16-May-2008 Dale Johannesen <dalej@apple.com> Treat common as distinct from weak global on Darwin x86.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
aafce77b17d340aace52bcd49d1944109d82f14a 14-May-2008 Dale Johannesen <dalej@apple.com> Add CommonLinkage; currently tentative definitions
are represented as "weak", but there are subtle differences
in some cases on Darwin, so we need both. The intent
is that "common" will behave identically to "weak" unless
somebody changes their target to do something else.
No functional change as yet.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51118 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1532f3ddd77c362dd5f613af06b4de636e3c5b0e 02-Apr-2008 Dale Johannesen <dalej@apple.com> Recommitting EH patch; this should answer most of the
review feedback.
-enable-eh is still accepted but doesn't do anything.
EH intrinsics use Dwarf EH if the target supports that,
and are handled by LowerInvoke otherwise.
The separation of the EH table and frame move data is,
I think, logically figured out, but either one still
causes full EH info to be generated (not sure how to
split the metadata correctly).
MachineModuleInfo::needsFrameInfo is no longer used and
is removed.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b6d5b1439047609c050576f3dc52b722e76bd30b 01-Apr-2008 Dale Johannesen <dalej@apple.com> Revert 49006 for the moment.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1544e4713be68edcf042de5aed7265dff7169d9d 01-Apr-2008 Dale Johannesen <dalej@apple.com> Emit exception handling info for functions which are
not marked nounwind, or for all functions when -enable-eh
is set, provided the target supports Dwarf EH.

llvm-gcc generates nounwind in the right places; other FEs
will need to do so also. Given such a FE, -enable-eh should
no longer be needed.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49006 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
41e2397b720bc5d917ef614a7a6c257e8a3c8e42 03-Mar-2008 Devang Patel <dpatel@apple.com> s/isReturnStruct()/hasStructRetAttr()/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ec321b4d64ee02a1b90021c09d9513618787c6e8 15-Feb-2008 Chris Lattner <sabre@nondot.org> Handle \n's in value names for more targets. The asm printers
really really really need refactoring :(



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3502d0dac35531279ca848d2aaaa290f11172d6d 15-Feb-2008 Chris Lattner <sabre@nondot.org> If the llvm name contains an unprintable character, don't print it in
the global comment. This prevents printing things like:

... # foo
bar

when the name is "foo\nbar".



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3006c39e3a2f137dcb0f1b52d8a1c60a9657ed44 13-Feb-2008 Dale Johannesen <dalej@apple.com> __DATA not __DATA__ is the right segment name on darwin.
Spotted by Nick Kledzik.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
25edeb32e77fdabbb986787a91a46435dfbaf716 23-Jan-2008 Dale Johannesen <dalej@apple.com> Honor explicit section information on Darwin.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ea74c7e498274960c2b09b7988b4cfefff43137f 20-Jan-2008 Anton Korobeynikov <asl@math.spbu.ru> Honour ByVal parameter attribute for name decoration


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d15d086956f0b9fabd95d729023468e068e930c9 18-Jan-2008 Dale Johannesen <dalej@apple.com> Revert the part of 45848 that treated weak globals
as weak globals rather than commons. While not wrong,
this change tickled a latent bug in Darwin's strip,
so revert it for now as a workaround.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4af349445222fa2a66b6248217ecd18eb6930646 16-Jan-2008 Dale Johannesen <dalej@apple.com> Fix and enable EH for x86-64 Darwin. Adds
ShortenEHDataFor64Bits as a not-very-accurate
abstraction to cover all the changes in DwarfWriter.
Some cosmetic changes to Darwin assembly code for
gcc testsuite compatibility.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46029 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c7406ae773a88b496b34d03896310631576c48a7 11-Jan-2008 Dale Johannesen <dalej@apple.com> Weak things initialized to 0 don't go in bss on Darwin.
Cosmetic changes to spacing to match gcc (some dejagnu
tests actually care).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7ad92d81e2c2d1fe8ae89e5638fc57925d747429 02-Jan-2008 Chris Lattner <sabre@nondot.org> darwin9 and above support aligned common symbols.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4ee451de366474b9c228b4e5fa573795a715216d 29-Dec-2007 Chris Lattner <sabre@nondot.org> Remove attribution from file headers, per discussion on llvmdev.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
dc024674ff96820d6020757b48d47f46d4c07db2 27-Nov-2007 Duncan Sands <baldrick@free.fr> Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1d4ce2ab962fee691239d58c8157c12b8037f9de 21-Nov-2007 Dale Johannesen <dalej@apple.com> Fix .eh table linkage issues on Darwin. Some EH support
for Darwin PPC, but it's not fully working yet.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ca0ed744852a7d9625572fbb793f65e81225a3e8 05-Nov-2007 Duncan Sands <baldrick@free.fr> Eliminate the remaining uses of getTypeSize. This
should only effect x86 when using long double. Now
12/16 bytes are output for long double globals (the
exact amount depends on the alignment). This brings
globals in line with the rest of LLVM: the space
reserved for an object is now always the ABI size.
One tricky point is that only 10 bytes should be
output for long double if it is a field in a packed
struct, which is the reason for the additional
argument to EmitGlobalConstant.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43688 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
52c0253f04e9641436f0997b95a0c60266da3c26 05-Oct-2007 Dan Gohman <gohman@apple.com> Change a few more spaces to tabs in assembly output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
cb406c25973b4e88a6c10ad839ef1beeb3664715 03-Oct-2007 Dan Gohman <gohman@apple.com> Use empty() member functions when that's what's being tested for instead
of comparing begin() and end().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
76a4023096fc330db11d711197388d9f3ba91cc6 21-Sep-2007 Evan Cheng <evan.cheng@apple.com> Honor user-defined section specification of a global, ignores whether its initializer is null.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42182 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
bd626b885f92a2f4a583e4c1710be8cc543962c1 16-Sep-2007 Bill Wendling <isanbard@gmail.com> Follow-up to patch r41999. Make the conditional that emits the personality stub
match the conditional that turns on exception handling emittion in the asm
printer.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
656ab16c56187efd58fd378fd4e556f61d4c97bf 16-Sep-2007 Bill Wendling <isanbard@gmail.com> Only emit the personality function as a global value if the backend actually
supports it. This solves this error on the Darwin x86-64 platform:

$ cat testcase.ii
struct A {
A();
};

A *bork() {
return new A;
}
$ llvm-g++ -arch x86_64 -c testcase.ii
/var/tmp//cc3U8fd8.s:52:unknown section type: non_lazy_symbol_pointers
/var/tmp//cc3U8fd8.s:52:Rest of line ignored. 1st junk character valued 76 (L).
/var/tmp//cc3U8fd8.s:53:Unknown pseudo-op: .indirect_symbol
/var/tmp//cc3U8fd8.s:53:Rest of line ignored. 1st junk character valued 95 (_).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41999 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d60da495cd5c6bc119b3489e6b3147158735bb99 11-Sep-2007 Bill Wendling <isanbard@gmail.com> The personality function on Darwin needs a global stub. We then refer to
that global stub instead of doing the ".set" thingy we were doing before.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41838 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a45d9a15ba45eedc55b7b8cad292afbd4cb57cba 13-Aug-2007 Chris Lattner <sabre@nondot.org> Fix PR1607



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
825811dc8312684c93e7b7a74f92b6b3efcd73c3 30-Jul-2007 Dan Gohman <gohman@apple.com> Use tabs more consistently in assembler pseudo-ops.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40594 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b8275a3f6f6497889653cb2452d82a46f92b4926 25-Jul-2007 Dan Gohman <gohman@apple.com> Don't ignore the return value of AsmPrinter::doInitialization and
AsmPrinter::doFinalization.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5411835165429dc409012adc5efaf92c4938563f 22-Jun-2007 Dale Johannesen <dalej@apple.com> Quote complex names for Darwin X86 and ARM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
af67ea73184006b4f8a86ceb04fe318aad8b6558 14-Jun-2007 Dan Gohman <gohman@apple.com> Eliminate some redundant newlines in asm output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37574 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2a07e2f4df8010bbb07591a097b5e55101ed4a96 05-May-2007 Anton Korobeynikov <asl@math.spbu.ru> Emit sections/directives in the proper order. This fixes PR1376. Also,
some small cleanup was made.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6f9896fcc81a1128b5f436d1763cc6213745adf1 29-Apr-2007 Anton Korobeynikov <asl@math.spbu.ru> Implement protected visibility. This partly implements PR1363. Linker
should be taught to deal with protected symbols.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b3a0417cad8b625acc3033bd5e24afb9ffd0b084 20-Apr-2007 Lauro Ramos Venancio <lauro.venancio@gmail.com> Implement "general dynamic", "initial exec" and "local exec" TLS models for
X86 32 bits.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36283 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d15dff24c6a3712298e16453eb8d09c4404563a5 17-Apr-2007 Chris Lattner <sabre@nondot.org> rename X86FunctionInfo to X86MachineFunctionInfo to match the header file
it is defined in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ad7baee241ac53da26fb48916c4025820a1451a8 31-Mar-2007 Anton Korobeynikov <asl@math.spbu.ru> Consistency with native compilers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
032953d74746fa89b62e49b63a38ba6d8827b81a 08-Mar-2007 Evan Cheng <evan.cheng@apple.com> Putting more constants which do not contain relocations into .literal{4|8|16}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f0b5d56efdb4f130c8abe7ac2732a3ff9a66e455 08-Mar-2007 Evan Cheng <evan.cheng@apple.com> Put constant data to .const, .const_data, .literal{4|8|16} sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35016 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9dd9abd87f77da4e523db02a396721e34631ef32 01-Mar-2007 Anton Korobeynikov <asl@math.spbu.ru> Ensure that fastcall'ed function is correctly mangled & stack is
properly aligned


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b267ca17d1351b28d597e7807b5ed398e92d65e4 30-Jan-2007 Evan Cheng <evan.cheng@apple.com> Darwin -static should codegen static ctors / dtors to .constructor / .destructor sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33657 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b10308e440c80dd6ffb4b478f741ff7e5f30cb48 28-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> Propagate changes from my local tree. This patch includes:
1. New parameter attribute called 'inreg'. It has meaning "place this
parameter in registers, if possible". This is some generalization of
gcc's regparm(n) attribute. It's currently used only in X86-32 backend.
2. Completely rewritten CC handling/lowering code inside X86 backend.
Merged stdcall + c CCs and fastcall + fast CC.
3. Dropped CSRET CC. We cannot add struct return variant for each
target-specific CC (e.g. stdcall + csretcc and so on).
4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in
on first attribute has meaning 'This is hidden pointer to structure
return. Handle it gently'.
5. Fixed small bug in llvm-extract + add new feature to
FunctionExtraction pass, which relinks all internal-linkaged callees
from deleted function to external linkage. This will allow further
linking everything together.

NOTEs: 1. Documentation will be updated soon.
2. llvm-upgrade should be improved to translate csret => sret.
Before this, there will be some unexpected test fails.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
39e9c09763d06b3c2133bcf0d8fec02120d63b93 18-Jan-2007 Bill Wendling <isanbard@gmail.com> The zerofill directive needs a newline after it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33327 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
071b9d5d7cb6dfe511e2b40aa28f6ee045b2a0bd 18-Jan-2007 Evan Cheng <evan.cheng@apple.com> Minor code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8e13e90052cf3ea23c08ae61c50182cee1904eb4 17-Jan-2007 Chris Lattner <sabre@nondot.org> restructure code a bit to make use of continue (simplifying things). Generalize
the .zerofill directive emission to not be darwin-specific


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5032e5a61381437174e035de2a7dd728978f7bd5 17-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> * Fix one more bug in PIC codegen: extra load is needed for *all*
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d05ca657da029d2d3d902cdb035b311e11fd240c 16-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> Emit symbol type information for ELF/COFF targets


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33256 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
43bbc5c38f4e73c3a38b7b79be031f30d8a11ab7 14-Jan-2007 Chris Lattner <sabre@nondot.org> add support for hidden visibility to darwin/x86


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
fd92ec40a94f1233fb6733aff46af86851d5b8ce 14-Jan-2007 Chris Lattner <sabre@nondot.org> darwin doesn't use .hidden. Disable this until we fix it right.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33191 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7f70559bc47877bafc6dfa92b7df6b64650445fb 12-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> * PIC codegen for X86/Linux has been implemented
* PIC-aware internal structures in X86 Codegen have been refactored
* Visibility (default/weak) has been added
* Docs fixes (external weak linkage, visibility, formatting)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33136 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
317848f4a11f7fe55afdd6d90ded8444069b56fb 03-Jan-2007 Anton Korobeynikov <asl@math.spbu.ru> Really big cleanup.
- 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
95b2c7da5e83670881270c1cd231a240be0556d9 19-Dec-2006 Chris Lattner <sabre@nondot.org> eliminate static ctors for Statistic objects.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
15404d060ba8b604c03b9223a0f2e2abcd0fdded 18-Dec-2006 Rafael Espindola <rafael.espindola@gmail.com> move ExtWeakSymbols to AsmPrinter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3e69a7e527b85ccbc561824e63f8be12fcb5e6d6 10-Dec-2006 Rafael Espindola <rafael.espindola@gmail.com> fix test/Regression/CodeGen/X86/weak.ll
if a variable has no initialization, I->getInitializer() will fail


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ac0b6ae358944ae8b2b5a11dc08f52c3ed89f2da 06-Dec-2006 Chris Lattner <sabre@nondot.org> Detemplatize the Statistic class. The only type it is instantiated with
is 'unsigned'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8752ce61e1ba3973e0082085c1c3c9b8069ea2b7 01-Dec-2006 Evan Cheng <evan.cheng@apple.com> Add weak reference directive.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
81cf60fceb411b5cc8a161d4332c5c9d0784f326 01-Dec-2006 Evan Cheng <evan.cheng@apple.com> A initialized global variable cannot be extern weak. However, if a global value's initializer is itself a external weak symbol, emit the weak reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32069 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6d7d310519ad3010a3830eef3d3eed1068e411a1 01-Dec-2006 Evan Cheng <evan.cheng@apple.com> Minor code clean up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32067 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
de97f9cd22381015806375e63bf03f5d3ae16c0c 01-Dec-2006 Evan Cheng <evan.cheng@apple.com> Fix indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f532c4fc1576578892d22339c8b66bea6c8fb59f 01-Dec-2006 Evan Cheng <evan.cheng@apple.com> Darwin X86 external weak linkage support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32065 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
78ee7b78c3c47b71c4b7a1475438d6574216a64b 01-Dec-2006 Anton Korobeynikov <asl@math.spbu.ru> Introducing external weak linkage. Darwin codegen should be added later.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
63af319c4b49d098ff50bf39bc707991494ee82e 31-Oct-2006 Evan Cheng <evan.cheng@apple.com> Nuke dead code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31327 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ab4022f196059745c0ca0780b71a80fa67e896be 31-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> 1. Clean up code due to changes in SwitchTo*Section(2)
2. Added partial debug support for mingw\cygwin targets (the same as
Linux\ELF). Please note, that currently mingw\cygwin uses 'stabs' format
for storing debug info by default, thus many (runtime) libraries has
this information included. These formats shouldn't be mixed in one binary
('stabs' & 'DWARF'), otherwise binutils tools will be confused.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b52cf1f1947513c1079a08763594fbb5721e80b5 31-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> Unbreaking static ctors patch.
Defaulting second arguments of SwitchTo*Section, this should make things
somehow clearer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31306 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
090ac3641d93141cacce9e3576172763057f45eb 31-Oct-2006 Reid Spencer <rspencer@reidspencer.com> Make this compile again.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2e323aa09d57c094f6df0ca424f3b4a2aafc8853 31-Oct-2006 Evan Cheng <evan.cheng@apple.com> Apply Aton's LLVM patch for PR973: Linux ctors / dtors support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
02b8511364a61b559369d8dc36e82a486f42fec3 30-Oct-2006 Reid Spencer <rspencer@reidspencer.com> Add debug support for X86/ELF targets (Linux). This allows llvm-gcc4
generated object modules to be debugged with gdb. Hopefully this helps
pre-release debugging.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
71aae624456cd6ffcfbb965ea56454f57644b538 28-Oct-2006 Evan Cheng <evan.cheng@apple.com> Doh. Must check if GV is constant first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8910c1cacb116dfd9d854572512b5298274ff7e7 26-Oct-2006 Evan Cheng <evan.cheng@apple.com> Put cstrings in .cstring section when compiling for Mac OS X.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f9c197e022521a83f8876890b4241fc23e63572c 24-Oct-2006 Devang Patel <dpatel@apple.com> Move getPreferredAlignmentLog from AsmPrinter to TargetData


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1a3ecbb4a63980bdb0b67d7344e528a72cc94d15 22-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> Do section switching right way for Mingw\Cygwin and Linux.
This will allow (after llvm-gcc linkage fix) more dummy tests using
libstdc++ to pass on mingw :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b1c8802407ccbf2f2bd81abe9de26f61c9c195a4 18-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> Fixed mingw\cygwin linkonce linkage once again.
Added workaround for linker bug with linkonce sections.
Changed sections prefix to allow linker merge them
(PE loader doesn't like too much long-named sections :) )
All of this unbreaks libstdc++ on mingw32 allowing (small)
programs to be compiled, linked and run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b7188b168492d6efe5bb3b7f80b1c43414a80b5c 17-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> Adding linkonce linkage codegeneration support for mingw32\cygwin
targets.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31011 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
54b1cc6d8a2e5299c13db0fa3438b78cab13de71 14-Oct-2006 Anton Korobeynikov <asl@math.spbu.ru> Align stack size to DWORD boundary


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e87e1154a12b91f3c7a5dec8b946c7c9829deb16 26-Sep-2006 Chris Lattner <sabre@nondot.org> Various random and minor code cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f824868ed9d2cc756a797f6dbd67732f75e31cd6 21-Sep-2006 Anton Korobeynikov <asl@math.spbu.ru> Adding codegeneration for StdCall & FastCall calling conventions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30549 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
bcb9770efe409f3291ce21269904744e7bf3397b 17-Sep-2006 Anton Korobeynikov <asl@math.spbu.ru> Added some eye-candy for Subtarget type checking
Added X86 StdCall & FastCall calling conventions. Codegen will follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b74ed07bfd3af42331b1964c24c39912610a08f4 14-Sep-2006 Anton Korobeynikov <asl@math.spbu.ru> Adding dllimport, dllexport and external weak linkage types.
DLL* linkages got full (I hope) codegeneration support in C & both x86
assembler backends.
External weak linkage added for future use, we don't provide any
codegeneration, etc. support for it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
25ab690a43cbbb591b76d49e3595b019c32f4b3f 08-Sep-2006 Evan Cheng <evan.cheng@apple.com> Committing X86-64 support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a0f3d17daac73c9c71aad497b298cbe82848f726 08-Sep-2006 Jim Laskey <jlaskey@mac.com> Make target asm info a property of the target machine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30162 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
05a059d5d8d039dbbec3607b313c38fba14f972e 07-Sep-2006 Jim Laskey <jlaskey@mac.com> Make the x86 asm flavor part of the subtarget info.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
563321a2582851c653d0863e8e0bba3d483734f9 06-Sep-2006 Jim Laskey <jlaskey@mac.com> Separate target specific asm properties from the asm printers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30126 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
52a51e38dc312aa262b0d771419afe1785f3cb22 12-Aug-2006 Nate Begeman <natebegeman@mac.com> Emit .set directives for jump table entries when possible, which reduces
the number of relocations in object files, shrinkifying them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29650 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ea348585c80f5b1f51776dd850ecbdce034f2f19 27-Jul-2006 Jim Laskey <jlaskey@mac.com> Use the predicate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29322 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2f1ae88445c696a9b9d61e14747ba721190cdc99 27-Jul-2006 Nate Begeman <natebegeman@mac.com> Support jump tables when in PIC relocation model


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a3b5939caa0331eea2efba8a01d04f60f449daeb 15-Jul-2006 Chris Lattner <sabre@nondot.org> Add an out-of-line virtual method for X86DwarfWriter to give it a home.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d3f69811740d526cce7ef138cbcaaf45249db09b 29-Jun-2006 Evan Cheng <evan.cheng@apple.com> Move .literal4 and .literal8 support into AsmPrinter.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
33c36f306af686cebe788788691a5981b66dbbbc 28-Jun-2006 Evan Cheng <evan.cheng@apple.com> Doh.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28963 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ee12e8f28dc520cbc98555bc18749c2828c05495 28-Jun-2006 Evan Cheng <evan.cheng@apple.com> Oops. Need to keep CP index.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
07103d312aa1d20f1c9bbc40cbdafe1e312c4a3d 28-Jun-2006 Evan Cheng <evan.cheng@apple.com> Darwin puts float and double literal constants into literal4 and literal8 sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28957 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f8614db52eac24e43041dd1fafb0b671f2d362a9 04-Jun-2006 Evan Cheng <evan.cheng@apple.com> Be consistent with gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
57c0788e020ca8553fbae9f3820eef406e88a638 26-May-2006 Evan Cheng <evan.cheng@apple.com> Minor bug caught by Ashwin Chandra


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28491 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
932ad51feabc4119dda978c4f147dfe1b010a95d 25-May-2006 Evan Cheng <evan.cheng@apple.com> X86 / Cygwin asm / alignment fixes.
Patch contributed by Anton Korobeynikov!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28480 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
dad9c5a14ff29cf4b5f7d7352da8f15337bae51f 09-May-2006 Chris Lattner <sabre@nondot.org> Fix the MASM asmprinter's lies. It does not want to emit code to .text/.data
it wants it emitted to _text/_data.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28185 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4632d7a57008564c4b0f8246e85bd813a200d2c6 09-May-2006 Chris Lattner <sabre@nondot.org> Split SwitchSection into SwitchTo{Text|Data}Section methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28184 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d43b18d9e47326cb83b11d684d569ee9050ebefa 06-May-2006 Jeff Cohen <jeffc@jolt-lang.org> Fix some loose ends in MASM support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28148 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7660ebc90ab1a8ca64f7df20cec19106abaf8e35 05-May-2006 Chris Lattner <sabre@nondot.org> Print *some* grouping around inline asm blocks so we know where they are.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a6e24d8caf526b2778293d8a9b469505e4634ab8 04-May-2006 Jeff Cohen <jeffc@jolt-lang.org> Make Intel syntax the default when LLVM is built with VC++.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a69571c7991813c93cba64e88eced6899ce93d81 03-May-2006 Owen Anderson <resistor@mac.com> Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses. This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.

This fixes PR 759.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6e0f3868965612fbd391ec9d4c5eeec6ffebb351 02-May-2006 Nate Begeman <natebegeman@mac.com> Hooray, everyone now uses the same printBasicBlockLabel implementation


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
cdf38c4edb892c356cfaa3c09c57728bc8d6bfd0 02-May-2006 Nate Begeman <natebegeman@mac.com> Extend printBasicBlockLabel a bit so that it can be used to print all
basic block labels, consolidating the code to do so in one place for each
target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
37efe6764568a3829fee26aba532283131d1a104 22-Apr-2006 Nate Begeman <natebegeman@mac.com> JumpTable support! What this represents is working asm and jit support for
x86 and ppc for 100% dense switch statements when relocations are non-PIC.
This support will be extended and enhanced in the coming days to support
PIC, and less dense forms of jump tables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27947 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
99db0442f03f75aa36b560a7f4327bfa992ac15c 23-Mar-2006 Jim Laskey <jlaskey@mac.com> Change interface to DwarfWriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c4c6257c1a154279bf10e9498d46d6c1793dbaa7 14-Mar-2006 Evan Cheng <evan.cheng@apple.com> Added getTargetLowering() to TargetMachine. Refactored targets to support this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7809811e4ed3c2462efa327cef0464b9844baea2 07-Mar-2006 Jim Laskey <jlaskey@mac.com> Use "llvm.metadata" section for debug globals. Filter out these globals in the
asm printer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26599 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d594881a28a3351395118619176dfe42410b3c44 07-Mar-2006 Evan Cheng <evan.cheng@apple.com> - Emit subsections_via_symbols for Darwin.
- Conditionalize Dwarf debugging output (Darwin only for now).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26582 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3c992d291bc67d9ce9d742d586d24ade9a577c99 07-Mar-2006 Evan Cheng <evan.cheng@apple.com> Enable Dwarf debugging info.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26581 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e650a6b3f41456318bf3b7b8fc2e8d29e23d1c04 23-Feb-2006 Chris Lattner <sabre@nondot.org> "." isn't enough to get a private label on linux, use ".L".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26327 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a0ea0539e359f6d82218e5aa4cdf3b50b17d6fbd 23-Feb-2006 Evan Cheng <evan.cheng@apple.com> PIC related bug fixes.
1. Various asm printer bug.
2. Lowering bug. Now TargetGlobalAddress is wrapped in X86ISD::TGAWrapper.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
17ef92eda77809c87c5dc006b85be87a9e9a84dc 15-Feb-2006 Evan Cheng <evan.cheng@apple.com> Use .zerofill on x86/darwin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
418caa135640833fda641997dae657062dccf0f4 09-Feb-2006 Chris Lattner <sabre@nondot.org> Darwin doesn't support #APP/#NO_APP


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26066 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5ada370f42a805f5fd585ac97aae82caea62a5a0 08-Feb-2006 Evan Cheng <evan.cheng@apple.com> Fixed a local common symbol bug.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
315421e77c1912038170762df85ea576f29371f6 07-Feb-2006 Evan Cheng <evan.cheng@apple.com> For ELF, .comm takes alignment value as the optional 3rd argument. It must be
specified in bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2338c5cb0e7c102ae2269d9a6b6e3d620ed206da 07-Feb-2006 Evan Cheng <evan.cheng@apple.com> Darwin ABI issues: weak, linkonce, etc. dynamic-no-pic support is complete.
Also fixed a function stub bug. Added weak and linkonce support for
x86 Linux.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ff805b50f81da0a486ada775ba0734a0f4049ec8 05-Feb-2006 Chris Lattner <sabre@nondot.org> Use getPreferredAlignmentLog.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25980 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d1239b7c69e3c8f36d21c30d5df923cfeb96583e 13-Dec-2005 Chris Lattner <sabre@nondot.org> Use the shared asmprinter code for printing special llvm globals


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a046e0d79f9f4011b6ebcb02e3b038a9601bf7fc 13-Dec-2005 Chris Lattner <sabre@nondot.org> Add ELF and darwin support for static ctors and dtors


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ac2902bcb5568c9a4ff8fe1bbe794f656498ff89 22-Nov-2005 Chris Lattner <sabre@nondot.org> Use HasDotTypeDotSizeDirective instead of forELF


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9787c6443f890c9731f8ea56f4c16ce8c39394f8 21-Nov-2005 Chris Lattner <sabre@nondot.org> Remove a level of indentation by using a continue.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24479 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a35a8e87fa8294402b1015e0e5049f6869dcc653 21-Nov-2005 Chris Lattner <sabre@nondot.org> Use subtarget information computed by X86Subtarget instead of rolling our own.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5df14ca0a1264ace774cc9eb7d6dcb493e8256c4 21-Nov-2005 Chris Lattner <sabre@nondot.org> Add a forELF flag, allowing the removal of forCygwin and simplification of
conditionals.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24475 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8fccc97b0bb4297ce5c6a74b1562634fe3e38d7f 21-Nov-2005 Chris Lattner <sabre@nondot.org> simplify and genericize this code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
69191f8f059aa8d5515c8c037b7ba31183e89778 21-Nov-2005 Chris Lattner <sabre@nondot.org> prune #include


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24468 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d939f6c85db8c8a01ff4eafd16168d540e119f09 21-Nov-2005 Chris Lattner <sabre@nondot.org> Switch to using the shared constant pool printer, along with using shorter
CPI ids


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8b8b9515d6b18f9fdd0303a6ce603f5b5997ef50 21-Nov-2005 Chris Lattner <sabre@nondot.org> Adjust to capitalized AsmPrinter method names


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
7b6e53cde7e5f13b4519e01e327dee32a6711a7f 21-Nov-2005 Chris Lattner <sabre@nondot.org> convert the rest of this over to use SwitchSection


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24448 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
224cfc2eac2c7815e5fe6b9709f7f0e0d201018c 21-Nov-2005 Chris Lattner <sabre@nondot.org> Start using the AsmPrinter shared SwitchSection code. This allows the X86
backend to implement global variables in sections.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
62cbf2aab9fd5366281871974ef580fd072309cc 21-Nov-2005 Chris Lattner <sabre@nondot.org> Rename SwitchSection -> switchSection to avoid conflicting with a future
change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24443 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c41cc83117bbc8fe3951a1b5f14a484fabb8ab63 21-Nov-2005 Chris Lattner <sabre@nondot.org> Naturally align doubles in the constant pool, set PrivateGlobalPrefix on
darwin, use it when printing the constant pool indices so the labels are
appropriately private, emit cp entries to .const instead of .data on darwin
and only emit a single .section for the constant pool, not one for each
entry.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24440 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
00b16889ab461b7ecef1c91ade101186b7f1fce2 27-Jul-2005 Jeff Cohen <jeffc@jolt-lang.org> Eliminate all remaining tabs and trailing spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22523 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9035b99abf36be73ef26a4d31f67a2b4d5d74e99 16-Jul-2005 Nate Begeman <natebegeman@mac.com> A couple more darwinisms


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
73213f6c07afc1479f8d7bf53ea99adf7fd60b78 12-Jul-2005 Nate Begeman <natebegeman@mac.com> Commit some pending darwin changes before subtarget support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22388 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b12c9fa565ca03fdfc40d8d9933561f47bc5f89e 11-Jul-2005 Chris Lattner <sabre@nondot.org> Fix crazy indentation


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
72b286b0a0f8987bc247ae052ac86008c553e9ae 08-Jul-2005 Nate Begeman <natebegeman@mac.com> Add support for assembling .s files on mac os x for intel
Add support for running bugpoint on mac os x for intel


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22351 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4eb74ba602be3f5c43d9e228c87ed8fe4c7ffe1c 02-Jul-2005 Nate Begeman <natebegeman@mac.com> The statistic needs to be in the correct namespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22327 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b36cbd0286cf008987737dbcc3b788af902d414b 02-Jul-2005 Chris Lattner <sabre@nondot.org> Refactor X86AsmPrinter.cpp into multiple files. Patch contributed
by Aaron Gray, cleaned up by me.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9d19eb459c9466705b0a3c2ec2a5a9b781a25b20 30-Jun-2005 Nate Begeman <natebegeman@mac.com> Make the x86 asm printer darwin-aware. This mostly entails doing the same
thing as cygwin most of the time, and printing our alignments in log2
rather than number of bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
57c24508d35e83f09ff86d0d98ca541f6f0227b9 20-Jun-2005 John Criswell <criswell@uiuc.edu> Fixed indentation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22270 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0e0a7a45d3d0a8c865a078459d2e1c6d8967a100 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> * Remove trailing whitespace
* Convert tabs to spaces


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5b3a4553c1da7e417a240379e2f510c77532c5c1 17-Mar-2005 Chris Lattner <sabre@nondot.org> Fix the missing symbols problem Bill was hitting. Patch contributed by
Bill Wendling!!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20649 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e4d5c441e04bdc00ccf1804744af670655123b07 15-Mar-2005 Chris Lattner <sabre@nondot.org> This mega patch converts us from using Function::a{iterator|begin|end} to
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.

This patch is contributed by Gabor Greif, thanks!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d632f4977eb5d80191dad3beaacaa15a17f40c3b 08-Mar-2005 Reid Spencer <rspencer@reidspencer.com> Patch to make assembly output compatible with mingw compilation (identical
to cygwin)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5dc81f63d1ad701fe03a8fadab6053094fd80fa2 23-Jan-2005 Reid Spencer <rspencer@reidspencer.com> Support Cygwin assembly generation. The cygwin version of Gnu ASsembler
doesn't support certain directives and symbols on cygwin are prefixed with
an underscore. This patch makes the necessary adjustments to the output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e11a9a93a88d937e1f1d55be968cf2b3f8e0bd47 12-Jan-2005 Chris Lattner <sabre@nondot.org> Print a load of a null pointer (in intel mode) like this:

mov %AX, WORD PTR [0]

instead of like this:

mov %AX, WORD PTR []


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9f2cb3da480148421b3b4e4cb7c77f94259c356e 12-Jan-2005 Chris Lattner <sabre@nondot.org> Print a load of a null pointer like this:

movw 0, %ax

instead of like this:

movw , %ax


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
84b85c82622313a9f22366b1b6c4cd6f70777477 16-Dec-2004 Chris Lattner <sabre@nondot.org> Adjust to changes in asmwriter filenames


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d2691fdf189738fd6e9cc1463012ba07776899a2 14-Nov-2004 Misha Brukman <brukman+llvm@gmail.com> GhostLinkage should not reach asm printing stage


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4b2c09fa2226010285937c0d402a556f3b38f9f8 14-Nov-2004 Chris Lattner <sabre@nondot.org> Don't print unneeded labels


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0e0ed856977c2c105a2ad8f344bce8056f232ae4 17-Oct-2004 Chris Lattner <sabre@nondot.org> Give the asmprinter the ability to print memrefs with a constant pool index,
index reg and scale


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d416f086cc97976abd4f40adadb3956763ffe4b0 15-Oct-2004 Chris Lattner <sabre@nondot.org> Give the X86 asm printer the ability to print out addressing modes that have
constant displacements from global variables. Patch by Jeff Cohen!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
955f09666d832632dae3413d981c2895aeba1652 04-Oct-2004 Chris Lattner <sabre@nondot.org> * Prune #includes
* Update comments
* Rearrange code a bit
* Finally ELIMINATE the GAS workaround emitter for Intel mode. woot!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ac5701c5623f58cfd567b129404fa21fe3135a82 04-Oct-2004 Chris Lattner <sabre@nondot.org> Add support for emitting AT&T style .s files, and make it the default. Users
may now choose their output format with the -x86-asm-syntax={intel|att} flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9a3e49a1b3f54e6f29496108b13aed3111f004a0 03-Oct-2004 Chris Lattner <sabre@nondot.org> Add support for the -x86-asm-syntax flag, which can be used to choose between
Intel and AT&T style assembly language. The ultimate goal of this is to
eliminate the GasBugWorkaroundEmitter class, but for now AT&T style emission
is not fully operational.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16639 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f746a7d09b219619b16ffa875e762d6e24868d6f 18-Aug-2004 Chris Lattner <sabre@nondot.org> Rename var


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15897 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c6393f82bfaba4a16de418329fb1788ac917c543 17-Aug-2004 Chris Lattner <sabre@nondot.org> Start using alignment output routines from AsmPrinter.
Changes to make this more similar to the ppc asmprinter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8581ee85b46bc5440a8aae53a0b752771f7b83f4 17-Aug-2004 Chris Lattner <sabre@nondot.org> Use the AsmPrinter emitGlobalConstant.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
055acae18c4ba5f149237927f88a842cd77285cf 17-Aug-2004 Chris Lattner <sabre@nondot.org> Start using the AsmPrinter to emit our first class constants. This also
drops our half-assed support for cygwin, which noone uses and doesn't work
anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15839 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8e61d825284bb1378da7c170a7ca9e885e4209f7 11-Aug-2004 Chris Lattner <sabre@nondot.org> Remove a dead method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2a998bdc7c135f712b04421d573ddb215f4ea7f1 11-Aug-2004 Chris Lattner <sabre@nondot.org> Finally, the entire instruction asmprinter is now generated from tblgen, woo!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15658 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e4ead0ce62ce90803f4c1c689a0c3bc6bdb876a7 11-Aug-2004 Chris Lattner <sabre@nondot.org> Add asmprintergen support for the last X86 instruction that needs it: pcrelative calls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15657 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8549429a78e50ef52fc0c308df2cbaa38845ce2c 11-Aug-2004 Chris Lattner <sabre@nondot.org> Move hacks up


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
66fa1dcf9024fcb953a574394b0b7dd6320f6fe3 11-Aug-2004 Chris Lattner <sabre@nondot.org> Convert asmprinter to new style of instruction printer
Start asmprintergen'ifying machine instrs with memory operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
15876bb28c9c0983279c30a123c13224648574c1 04-Aug-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Stop using getValues().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1626c507e8e478ad372187f8380e65bb3cfcaeff 01-Aug-2004 Chris Lattner <sabre@nondot.org> Get rid of 3 of the 4 'printimplicit' flags. Implicit operands are now
explicitly listed in the asm string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15397 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
25369cfa2b33606cff971226fb4182109ff3646b 01-Aug-2004 Chris Lattner <sabre@nondot.org> Handle registers a bit more efficiently


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15395 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b12ee503f7c91542ed8de3f38b309b860a274679 01-Aug-2004 Chris Lattner <sabre@nondot.org> The tblgen'erated asmparser wants a way to print operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15392 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3fa861ac6c0be7066e5287092035dbf73a1ae21f 01-Aug-2004 Chris Lattner <sabre@nondot.org> Rename the Printer class -> X86AsmPrinter.
Include the tablegenerated assembly writer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8606aea11720277038fb507a562bb0fe701ac26c 26-Jul-2004 Misha Brukman <brukman+llvm@gmail.com> Fix indentation: should be 2 spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15240 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
91b5ca838ac74ba7756a49b569684f1889cae8af 26-Jul-2004 Misha Brukman <brukman+llvm@gmail.com> Fix file header as it has been renamed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8863f1814ba2c26910edb30857d10a8587f2f7de 18-Jul-2004 Reid Spencer <rspencer@reidspencer.com> bug 122:
- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c1f901c58936e71ce6b3021137dca7023318505a 29-Jun-2004 Misha Brukman <brukman+llvm@gmail.com> Fix associativity of parameters to assert(): now it actually makes sense.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14483 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e8d8fb26a670c5ef7646c1b2ab921da17316c25a 29-Jun-2004 Misha Brukman <brukman+llvm@gmail.com> Convert tabs to spaces.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14482 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b140762a45d21aaed054f15adaff0fc2274d939d 25-Jun-2004 Tanya Lattner <tonic@nondot.org> Made a fix so that you can print out MachineInstrs that belong to a MachineBasicBlock that is not yet attached to a MachineFunction. This change includes changing the third operand (TargetMachine) to a pointer for the MachineInstr::print function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f70c22b019494723d0e706f93d6542dfaa6e73a5 17-Jun-2004 Chris Lattner <sabre@nondot.org> Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d029cd2d5a159823f20a91d30fd782aae871c589 02-Jun-2004 Chris Lattner <sabre@nondot.org> Convert to the new TargetMachine interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3fb5d1a6cc011247c304cd05b0e68c2f22fde658 14-May-2004 Brian Gaeke <gaeke@uiuc.edu> Support MachineBasicBlock operands on RawFrm instructions.
Get rid of separate numbering for LLVM BasicBlocks; use the automatically
generated MachineBasicBlock numbering.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
266538350a1a478b5fe053bfda42c0d03e371570 13-Apr-2004 Chris Lattner <sabre@nondot.org> Add support for the printImplicitDefsBefore flag


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12893 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4ffff9e2fa97a99d6e7de84bcb0866f70d330260 08-Apr-2004 John Criswell <criswell@uiuc.edu> Added the llvm.readport and llvm.writeport intrinsics for x86. These do
I/O port instructions on x86. The specific code sequence is tailored to
the parameters and return value of the intrinsic call.
Added the ability for implicit defintions to be printed in the Instruction
Printer.
Added the ability for RawFrm instruction to print implict uses and
defintions with correct comma output. This required adjustment to some
methods so that a leading comma would or would not be printed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
30b2f72e7c55e3789f3431ee0941bcff8dcbe40e 01-Apr-2004 Chris Lattner <sabre@nondot.org> Add support for FP cmoves


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
db760d00c3db53e600a0fd4050f0be29bfc79b2c 11-Mar-2004 Misha Brukman <brukman+llvm@gmail.com> Fix compilation on Sparc: assert(0) => abort()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
519f4e76b7afe549e3c6a1cec3ccc92b56d7e03f 09-Mar-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Check if printing of implicit uses is required for all types of shift
instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0309066f6c4c2badd742c93b4624ff640132eeba 09-Mar-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Use newly added API to emit bytes for instructions that gas misassembles


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
538607fe457a77d6125f60a29371e8838ea81167 02-Mar-2004 Misha Brukman <brukman+llvm@gmail.com> Doxygenify some comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8295f202d9cc37a6c325abd38e2feb5b47d7fc63 29-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> A big X86 instruction rename. The instructions are renamed to make
their names more decriptive. A name consists of the base name, a
default operand size followed by a character per operand with an
optional special size. For example:

ADD8rr -> add, 8-bit register, 8-bit register

IMUL16rmi -> imul, 16-bit register, 16-bit memory, 16-bit immediate

IMUL16rmi8 -> imul, 16-bit register, 16-bit memory, 8-bit immediate

MOVSX32rm16 -> movsx, 32-bit register, 16-bit memory


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
8e475b8cfdd3c7a86afa6aa21326c7bad0be7f02 29-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Floating point loads/stores act on memory operands. Rename them to
denote this fact.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5ab29b504d49d3fa84d76f79e73704260f900682 28-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Each instruction now has both an ImmType and a MemType. This describes
the size of the immediate and the memory operand on instructions that
use them. This resolves problems with instructions that take both a
memory and an immediate operand but their sizes differ (i.e. ADDmi32b).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
169584ed45f62f91599bed3d019640e168d815ea 27-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Rename MRMS[0-7]{r,m} to MRM[0-7]{r,m}.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f7b42259e9901a0f2e7786523080f908ebb918e6 23-Feb-2004 Chris Lattner <sabre@nondot.org> Work around a gas bug. Print '-9223372036854775808' as unsigned.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11729 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5b672526205cc4438deb529363fb9bdaebbe086a 17-Feb-2004 Chris Lattner <sabre@nondot.org> Expand the repertoire of the forms we can print and encode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11537 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6e173a0d9c39add52bd291d754a80bcb40af5e6f 17-Feb-2004 Chris Lattner <sabre@nondot.org> Rename MOVi[mr] instructions to MOV[rm]i


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11527 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
55b5481255f0bf0bff73c8b5087004198ac87213 17-Feb-2004 Chris Lattner <sabre@nondot.org> Rename the IMULri* instructions to IMULrri, as they are actually three address
instructions. Add forms of these instructions that read from memory


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
859a18b5833f3566799313ecba8db4916500485b 15-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Make dense maps keyed on physical registers smallerusing
MRegisterInfo::getNumRegs() instead of
MRegisterInfo::FirstVirtualRegister.

Also use MRegisterInfo::is{Physical,Virtual}Register where
appropriate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
300d0eda6fe644a32c931a9c4eee02eebd289902 14-Feb-2004 Chris Lattner <sabre@nondot.org> finegrainify namespacification, fix 80col prob


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c0b9dc5be79f009d260edb5cd5e1d8346587aaa2 12-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Change MachineBasicBlock's vector of MachineInstr pointers into an
ilist of MachineInstr objects. This allows constant time removal and
insertion of MachineInstr instances from anywhere in each
MachineBasicBlock. It also allows for constant time splicing of
MachineInstrs into or out of MachineBasicBlocks.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b009c0088c7809b0972976caa949ce451fdce352 11-Feb-2004 Chris Lattner <sabre@nondot.org> s/getOpCode/getOpcode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11332 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
14be64018fb38d1fa535b9cd12d11371f4eba3b5 04-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Modify the two address instruction pass to remove the duplicate
operand of the instruction and thus simplify the register allocation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f0339396c1433d4995102f1963c9e5e3ecb60c45 04-Feb-2004 Alkis Evlogimenos <alkis@evlogimenos.com> IMULri* instructions do not require their first two registers operands
to be the same (IOW they are not two address instructions).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
aa06d0439ec183c2a7546c38ff50dbcfb285261b 14-Jan-2004 Chris Lattner <sabre@nondot.org> Eliminate the isStringCompatible function, using ConstantArray::isString.
It's not clear why the code was looking for signed chars < 0, but it can't
matter to the assembler anyway, so the check goes away.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
4d7af65903cbc858464362e70a6adf499982ec8a 14-Dec-2003 Alkis Evlogimenos <alkis@evlogimenos.com> Change interface of MachineOperand as follows:

a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse()
b) add isUse(), isDef()
c) rename opHiBits32() to isHiBits32(),
opLoBits32() to isLoBits32(),
opHiBits64() to isHiBits64(),
opLoBits64() to isLoBits64().

This results to much more readable code, for example compare
"op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used
very often in the code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f2d2925452b6f002361db4bb3a08b68ebcb8e8a7 01-Dec-2003 Chris Lattner <sabre@nondot.org> generalize the instruction types permitted a bit


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f9c86cf5cf3f7af65bbcb2e40d44903380d642e9 22-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Support constant casting constant pointers to ints/uints, and/or
the other way around, instead of failing a large, tumor-like assertion.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9053356dd1ea8b7f1752f5e6475095dc5850618a 04-Nov-2003 Chris Lattner <sabre@nondot.org> Fix problems in previous changes. This fixes several regressions last night.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ac662d1e021c37f2754ccca3fb792597ec451568 03-Nov-2003 Chris Lattner <sabre@nondot.org> Significantly simplify constant emission by unifying the stuff which used to build up
strings with the stuff that used to print to an ostream directly. We now NEVER build
up big strings, only to print them once they are formed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3e119c68fe9aa1cbd93f186747961a6ece1a0c5a 03-Nov-2003 Chris Lattner <sabre@nondot.org> Incorporate printSingleConstantValue into its single caller


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
603c56213d3769948720a2373b8b0530eb0478e8 03-Nov-2003 Chris Lattner <sabre@nondot.org> * Reformat some code
* Emit bools as 1/0 instead of true/false, fixing compilation of eon and
PR 83 & Jello/2003-11-03-GlobalBool.llx


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b576c94c15af9a440f69d9d03c2afead7971118c 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
44ffd5adac4f0ca7fde21b8a496a332561cab0b4 20-Oct-2003 Misha Brukman <brukman+llvm@gmail.com> The Grammar Police was here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9280 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c01d1232fe5a25d807c7ab975437ef6c514d2cd6 20-Oct-2003 Chris Lattner <sabre@nondot.org> * Rename X86::IMULr16 -> X86::IMULrr16
* Implement R1 = R2 * C where R1 and R2 are 32 or 16 bits. This avoids an
extra copy into a register, reducing register pressure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b1698411660a68d1dc0588a5536a5689de74b6d8 19-Oct-2003 Chris Lattner <sabre@nondot.org> .string adds an implicit zero at the end. This is not what we wanted.
This fixes PR#44.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
72ac148d4964fbff950fe11a0eeeda73973b849b 16-Oct-2003 Chris Lattner <sabre@nondot.org> Add support for 'weak' linkage.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9171 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2c9b913fc0fe0c6b2e41e84fc80f905a743ca054 06-Oct-2003 Brian Gaeke <gaeke@uiuc.edu> Add # of printed instructions statistic to both the SPARC and X86 LLC backends.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b3aad5d28f12344424787f983654ca46fa9d7e73 10-Sep-2003 Chris Lattner <sabre@nondot.org> Only emit inter-field-padding if the amount of padding is != 0


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ad2007155991e3fdec348a4fdbfc9faab806721d 09-Sep-2003 Chris Lattner <sabre@nondot.org> * Simplify printConstantValueOnly by moving the tail padding stuff directly
into the struct case.
* Extend printConstantValueOnly to print .zero's if the initializer is zero
* Delete dead isConstantFunctionPointerRef function
* Emit the appropriate assembly for the various linkage types!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8417 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9d99b43fbcc2e8b7644e06ac26ce941b3719a190 13-Aug-2003 Brian Gaeke <gaeke@uiuc.edu> Factory methods for FunctionPasses now return type FunctionPass *.
Revert (to v1.55) one of the hunks of Chris's change that messed up the
%-register workaround.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7815 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d59414fc85f03f5f053679c1c44ba830557ac987 11-Aug-2003 Chris Lattner <sabre@nondot.org> Sort #includes, eliminate #include of "llvm/Type.h" which was redundant


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
67488a92361e36cf17ba2c77e248ec93822b59bd 11-Aug-2003 Chris Lattner <sabre@nondot.org> Cygwin apparently works with %'s on registers!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
93c1afacd1f15e6bfe1bdbb9432601e9d1333630 11-Aug-2003 Chris Lattner <sabre@nondot.org> Add a new -enable-cygwin-compatible-output argument, which make the output more
consumably by the cygwin assembler. This is really just a nasty hack until we
get real target triple support.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
2a09877519c818bd3b92000150a58635075c5e8c 11-Aug-2003 Brian Gaeke <gaeke@uiuc.edu> Print % signs before register names; turn off "noprefix" mode in gas output.
Fixes test case test/Programs/LLVMSource/2003-08-03-ReservedWordGlobal.ll.

Also: Refactor implicit-uses printing into its own method.
Remove a couple of unused variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
72feb155632c5af1b2e7a28b38d4840916043cdb 04-Aug-2003 Chris Lattner <sabre@nondot.org> Simplify some constant expressions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d587a84197ee18d870d555d705ba586edd801cef 04-Aug-2003 Chris Lattner <sabre@nondot.org> Remove illegal, unsupported escapes. This fixes program: Ptrdist-bc


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7552 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e012132028ee8e4d9497810d87b021bf0c69e026 04-Aug-2003 Chris Lattner <sabre@nondot.org> * Sort #includes, remove dupliates
* Use .zero to emit padding between struct elements
* Emit .comm symbols when we can, this dramatically reduces the amount of gunk we have to print
* Print global variable identifiers next to initializer more nicely.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7551 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
002a50ac64f84256e8fb5911528defd0c5693bf9 31-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> I think local symbols in X86 GAS have to start with .L, not just
.; so I have changed the basic block markers to start with .L. I also
broke up a >80char line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d9fb37ac98d2bafdee8170f3c4ecca4627ca83aa 24-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Use unified CWriter-X86/Printer name mangler. Do not bother using
SlotCalculator in CWriter. (Unfortunately, all this means a lot of
X86/Printer's methods have to be de-constified again. Oh well.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3d8d9f7e72d5a75b5d538b8af09f8151d1adc22a 24-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> It doesn't appear that we need to #include these.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b3011a01b5e05efd72896f125a6dda3e669457e0 24-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Constify most methods. We could have constified doInitialization and
doFinalization too except that would have made them shadow, not override,
the parent class :-P.

Allow *any* constant cast expression between pointers and longs,
or vice-versa, or any widening (not just same-size) conversion that
isLosslesslyConvertibleTo approves. This fixes oopack.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7288 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
de420aee32ea799eada24afb59857040172c75d1 23-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Printer.cpp: Ditch addRequired/getAnalysis, because they leave
Printer::doFinalization() out in the cold. Now we pass in a TargetMachine
to Printer's constructor and get the TargetData from the TargetMachine.
Don't pass TargetMachine or MRegisterInfo objects around in the Printer.
Constify TargetData references.
X86.h: Update comment and prototype of createX86CodePrinterPass().
X86TargetMachine.cpp: Update callers of createX86CodePrinterPass().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7275 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
92bdfe6951df4c59be569d9f143190d5eba87305 23-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Add, rewrite, and/or reformat many comments.

Stop passing ostreams around: we already have one perfectly good ostream
and we can all share it.

Stop stashing a pointer to TargetData in the Pass object, because that will
lead to a crash if there are no functions in the module (ouch!) Instead,
use addRequired() and getAnalysis(), like we always should have done.

Move the check for ConstantExpr up before the check for isPrimitiveType,
because we need to be able to catch e.g. ubyte (cast bool false to ubyte),
whose type is primitive but which is nevertheless a ConstantExpr, by calling
our specialized handler instead of the AsmWriter. This would result in
assembler errors when we would try to output something like ".byte (cast
bool false to ubyte)".

GC some unused variable declarations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7265 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
c07736a397012499e337c994f7f952b07c709544 23-Jul-2003 Chris Lattner <sabre@nondot.org> Simplify code by using ConstantInt::getRawValue instead of checking to see
whether the constant is signed or unsigned, then casting


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0517c5ac92ecb4f8a4658fd1a5f3d33bd45acbe8 11-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> If we have a constant pointer reference to a function, we were printing
out the entire llvm disassembly for the function at global constant-output
time, which caused the assembler to barf in 164.gzip. This fixes that
particular problem (though 164.gzip has other problems with X86 llc.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7168 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1aa476edf028fed9b5c8ff537fcab42704037094 11-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Fix some serious floating-point bugs (fixes test cases such as Oscar,
Fhourstones, McCat-vor, and many others...)

Printer.cpp: Print implicit uses for AddRegFrm instructions. Break gas
bug workarounds up into separate stanzas of code for each bug. Add new
workarounds for fild and fistp.

X86InstrInfo.def: Add O_ST0 implicit uses for more FP instrs where they
obviously apply. Also add PrintImplUses flags for FP instrs where they
are necessary for gas to understand the output.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7165 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b44210d768fa677d63e5b1e098148bcddb2c92ff 07-Jul-2003 Brian Gaeke <gaeke@uiuc.edu> Insert workaround for GAS bug in assembling FLD/FSTP XWORD PTR [...]
instructions, by outputting them as bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d7908f679eeadc108e09e2aca5faba0b5410ea4a 27-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Nice tasty llc fixes. These should fix LLC for x86 for everything in
SingleSource except oopack and Oscar. (Sorry, Oscar.)

include/llvm/Target/TargetInstrInfo.h: Remove virtual print method. Add
accessors for ImplicitUses/Defs.
lib/Target/TargetInstrInfo.cpp: Remove virtual print method. If you
really wanted this, just use MI->print(O, TM); instead...
lib/Target/X86:
FloatingPoint.cpp: ...like this.
X86InstrInfo.h: Remove virtual print method. Define the PrintImplUses
target-specific flag bit.
X86InstrInfo.def: Add the PrintImplUses flag to all the instructions
which implicitly use CL, because the assembler needs to see the CL in
order to generate the right instruction.
Printer.cpp: Ditch fnIndex at Chris's request. Now we use CurrentFnName
to name constants in the constant pool for each function instead. This
avoids keeping state between runOnMachineFunction() invocations, which
is a no-no. Having MangledGlobals be global is a bogon I'd like to get
rid of too, but making it a static member of Printer causes link errors
(why???).
Make NumberForBB into a member of Printer instead of a global, too.
Make printOp and printMemReference into methods of Printer.
X86InstrInfo::print is now Printer::printMachineInstruction, because
TargetInstrInfo::print is history. (Because of this, we have to qualify
the names of some TargetInstrInfo methods we call.)
Print out the ImplicitUses field of any instruction we print that has
the PrintImplUses bit set.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6924 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
5e00157c5a96d1abea72f5dd3964173be5ace0f6 26-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Number constants from constant pool as CPIf_i where f is the function index
and i is the constant pool index.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
bc601fe3e718f77a0e312d045279852442b7ad9d 26-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Integrate the C writer's name mangler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6908 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
01d79ff86ddbea810b95329cac6391578f8d2e1c 25-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> First draft of X86 LLC backend. This should be OK for small programs like
Shootout, but it has some issues with bigger programs. Work in progress.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6907 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3387e7f7a25ea97daf1e3ed9555f29509b5c732a 19-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Fix output bug: Intel asm comment character is #, not ;.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
9e474c4ec87de79df4a62927275b5b607457e37f 19-Jun-2003 Brian Gaeke <gaeke@uiuc.edu> Add Initialization and Finalization methods for the Printer pass,
to print various things on a module-by-module basis (currently, only the
former is used).

Don't print < > around names. The assembler can't take it.

Print pseudoinstructions only as comments. The poor little assembler can't
take that, either.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
49cab03c8149619b5c07e473b08d73b91aefb35c 27-May-2003 Vikram S. Adve <vadve@cs.uiuc.edu> Renamed opIsDef to opIsDefOnly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3501feab811c86c9659248a4875fc31a3165f84d 14-Jan-2003 Chris Lattner <sabre@nondot.org> Rename MachineInstrInfo -> TargetInstrInfo


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b708944fc2752ca7f100c5a3c1f6385229777ea1 13-Jan-2003 Chris Lattner <sabre@nondot.org> * Implement rudimentary output of the constant pool
* Implement support for MRMS?m instructions
* Add Arg64 support
* Add support for frame indexes and constant pool indexes
*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
0285a33761b7d6432cc0031fd32a230d48c5a2a3 28-Dec-2002 Chris Lattner <sabre@nondot.org> * Convert to a MachineFunctionPass
* Don't take a TM as a ctor parameter
* Print [X - Y] instead of [X + -Y] when possible


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5180 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
eca1f639eb844ac8d3ac75c45fdc85b68627c80b 25-Dec-2002 Chris Lattner <sabre@nondot.org> Add printer support for Pseudo instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
facc9fb9ba7317ac376bfb2518b7abde18de3764 24-Dec-2002 Chris Lattner <sabre@nondot.org> Add support for the bswap instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f0eb7beb66d7402ba7ef32466aa6d9a53c33da01 15-Dec-2002 Chris Lattner <sabre@nondot.org> Give passes nice names!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
d909683591de7eb7d57edc1a03f6749fbc2f6840 15-Dec-2002 Chris Lattner <sabre@nondot.org> Use MachineOperand::isFoo methods instead of our own global functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3faae2dbc2196c60d27eb64e8d5797e826879f95 13-Dec-2002 Chris Lattner <sabre@nondot.org> Print X86 PHI nodes in a sane manner


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
95780cccef3f6630a912aba9e2241819d7a00ba4 13-Dec-2002 Brian Gaeke <gaeke@uiuc.edu> InstSelectSimple.cpp: Give promote32 a comment. Add initial
implementation of getReg() for arguments.

MachineCodeEmitter.cpp: Fix using EBP with index, scale and no
displacement (whew!) due to Chris.

Printer.cpp: Fix printing out index and scale in memory references.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4998 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a0f38c867cea507401dab03076dd5ace69f65edd 13-Dec-2002 Chris Lattner <sabre@nondot.org> Rename MemArg* to Arg*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
86764d778e833a314dcca5b9694ba42fa2476d66 05-Dec-2002 Brian Gaeke <gaeke@uiuc.edu> Target/X86/Printer.cpp: Add sizePtr function, and use it instead of
" <SIZE> PTR " string when emitting assembly.

Target/X86/X86InstrInfo.def: Tidy up a bit:
Squashed everything down to 118 chars wide, wrapping lines so that
comment is at the same point on each line. Rename "NoImpRegs" as
"NoIR". (most instructions have NoImpRegs twice on a line, so this
saves 10 columns).

Also, annotate various instructions with flags for size of memory operand.
(MemArg16, MemArg32, MemArg64, etc.)

Target/X86/X86InstrInfo.h: Define flags for size of memory operand.
(MemArg16, MemArg32, MemArg64, etc.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4932 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ac573f61b4cc095f9b5c7b48728e4d3e85087c2f 04-Dec-2002 Chris Lattner <sabre@nondot.org> Fix bogus assertion failures


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4919 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6d669443884985ba2998abb471c0ca336b765388 04-Dec-2002 Chris Lattner <sabre@nondot.org> Avoid bad assertion


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
dbf30f7b02e23a19eaa4f7b437a1f5682e4ee74c 04-Dec-2002 Chris Lattner <sabre@nondot.org> Add support for referencing global variables/functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4907 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
ea1ddab58e9db323294012628a56275da0e930a7 03-Dec-2002 Chris Lattner <sabre@nondot.org> Split the machine code emitter completely out of the printer


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
a5855c829b4bf3cd5acf8a605a6d54e266211554 02-Dec-2002 Chris Lattner <sabre@nondot.org> Remove comment
Remove handling of OtherFrm


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f8bafe8fdbab2de97ff94df0c11e0be299d37701 02-Dec-2002 Chris Lattner <sabre@nondot.org> Add rawfrm flags


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4841 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1d53ce40675637170ad89a6412f9a5a9b36d5833 22-Nov-2002 Chris Lattner <sabre@nondot.org> Handle cmp Reg, 0 correctly


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
128a7a96f01864cde6f807075e6a1a5e92132852 21-Nov-2002 Chris Lattner <sabre@nondot.org> Fix off by one bug


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4816 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
47b4a9b2e07e37f24f02dd31737def405452abf1 21-Nov-2002 Chris Lattner <sabre@nondot.org> Minor code cleanups


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
1804233ca5869925fa963df074ae00fe7a6719d7 21-Nov-2002 Chris Lattner <sabre@nondot.org> Implement printing of store instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
3d3067bf6bccc06ff2411caed50428f03dcd730d 21-Nov-2002 Chris Lattner <sabre@nondot.org> The big change here is to handle printing/emission of X86II::MRMSrcMem
instructions. Right now the only users are load instructions, and Misha's
spill code


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
675dd2cc47560a21d30c9e95da6527102bdf3437 21-Nov-2002 Chris Lattner <sabre@nondot.org> Add printing support for /0 /1 type instructions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
77875d88d0d45e7da162b99887743f7134fec2bb 21-Nov-2002 Chris Lattner <sabre@nondot.org> Support Registers of the form (B8+ rd) for example


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
233ad71051985511152385966f208eb2d83a8801 21-Nov-2002 Chris Lattner <sabre@nondot.org> Implement printing more, implement opcode output more


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4796 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
644e1abae4526e3b875d6bcf772089daaa2959b5 21-Nov-2002 Chris Lattner <sabre@nondot.org> Print another class of instructions correctly, giving us: xorl EDX, EDX
for example.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4793 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
e1f0d8113adc8687658af524a01385f606ee36b3 20-Nov-2002 Misha Brukman <brukman+llvm@gmail.com> Check not only for MO_VirtualRegister, but MO_MachineRegister as well when
printing out assembly. After all, we want the real thing too.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
f9f6088e1777b834a61abe0d80154dc8d57b91d0 18-Nov-2002 Chris Lattner <sabre@nondot.org> Start trying to print instructions more correctly. For now we also print out the opcode for each instruction as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4743 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
927dd095c435788655d7fe2a16f26efe65355fd2 18-Nov-2002 Chris Lattner <sabre@nondot.org> Arrange to have a TargetMachine available in X86InstrInfo::print


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4734 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
dbb61c6445513f5cfd057c74da9e5c8299353c68 17-Nov-2002 Chris Lattner <sabre@nondot.org> Reorganize printing interface a bit


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4728 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
6559bb96a9901af21c6037675f9508373773bd35 14-Nov-2002 Brian Gaeke <gaeke@uiuc.edu> include/llvm/CodeGen/MachineInstrBuilder.h: Add addClobber() inline
convenience method. Fix typo in comment.
lib/Target/X86/InstSelectSimple.cpp: Explicitly specify some implicit uses.
Use MOVZX/MOVSX instead of MOV instructions with sign extend instructions.
Take out LEAVE instructions.
32-bit IDIV and DIV use CDQ, not CWQ (CWQ is a typo).
Fix typo in comment and remove some FIXME comments.
lib/Target/X86/Printer.cpp: Include X86InstrInfo.h and llvm/Function.h.
Add some simple code to Printer::runOnFunction to iterate over
MachineBasicBlocks and call X86InstrInfo::print().
lib/Target/X86/X86InstrInfo.def: Make some more instructions with
implicit defs "Void". Add more sign/zero extending "move" insns
(movsx, movzx).
lib/Target/X86/X86RegisterInfo.def: Add EFLAGS as a register.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4707 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
b4f68ed32ede4cf7d31ce9e516e4074dad0a24ee 29-Oct-2002 Chris Lattner <sabre@nondot.org> Convert backend to use passes, implement X86TargetMachine


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
75276f150e081464300810c58934abcc9c4b9f53 29-Oct-2002 Chris Lattner <sabre@nondot.org> Initial stab at MachineInstr'ication


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp
726140821f96e3472a8eccef0c67c0b5ad65a1d9 26-Oct-2002 Chris Lattner <sabre@nondot.org> Initial checkin of X86 backend.
We can instruction select exactly one instruction 'ret void'. Wow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/X86/X86AsmPrinter.cpp