| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Patch by Joe Groff!
llvm-svn: 151183
|
| |
|
|
|
|
| |
Patch by Kai Nacke!
llvm-svn: 150307
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> 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.
llvm-svn: 150068
|
| |
|
|
|
|
|
| |
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.
llvm-svn: 138825
|
| |
|
|
|
|
| |
These are strictly utilities for registering targets and components.
llvm-svn: 138450
|
| |
|
|
| |
llvm-svn: 135974
|
| |
|
|
| |
llvm-svn: 134525
|
| |
|
|
|
|
|
|
|
| |
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.
llvm-svn: 127986
|
| |
|
|
| |
llvm-svn: 124639
|
| |
|
|
| |
llvm-svn: 122667
|
| |
|
|
|
|
|
| |
since it is trivial and will be shared between ppc and x86.
This substantially simplifies the X86 backend also.
llvm-svn: 119089
|
| |
|
|
| |
llvm-svn: 119088
|
| |
|
|
| |
llvm-svn: 118896
|
| |
|
|
| |
llvm-svn: 117205
|
| |
|
|
|
|
|
|
| |
floating point args.
This should be the minimum set of functions that could possibly need it.
llvm-svn: 116978
|
| |
|
|
|
|
| |
if any floating point arguments are passed to an external function.
llvm-svn: 116665
|
| |
|
|
|
|
|
| |
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.
llvm-svn: 115360
|
| |
|
|
| |
llvm-svn: 113915
|
| |
|
|
| |
llvm-svn: 110224
|
| |
|
|
| |
llvm-svn: 108945
|
| |
|
|
|
|
|
|
| |
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.
llvm-svn: 108782
|
| |
|
|
|
|
| |
users not to link it in (use 'x86codegen' llvm-config arg for this)
llvm-svn: 54886
|
| |
|
|
| |
llvm-svn: 52860
|
| |
|
|
| |
llvm-svn: 52859
|
| |
|
|
| |
llvm-svn: 52836
|
| |
|
|
|
|
| |
g++.dg/abi/key2.C
llvm-svn: 51458
|
| |
|
|
|
|
| |
$non_lazy_ptr's and $lazy_ptr's.
llvm-svn: 51277
|
| |
|
|
| |
llvm-svn: 51172
|
| |
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 51118
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 49064
|
| |
|
|
| |
llvm-svn: 49046
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 49006
|
| |
|
|
| |
llvm-svn: 47857
|
| |
|
|
|
|
| |
really really really need refactoring :(
llvm-svn: 47171
|
| |
|
|
|
|
|
|
|
|
|
| |
the global comment. This prevents printing things like:
... # foo
bar
when the name is "foo\nbar".
llvm-svn: 47170
|
| |
|
|
|
|
| |
Spotted by Nick Kledzik.
llvm-svn: 47037
|
| |
|
|
| |
llvm-svn: 46267
|
| |
|
|
| |
llvm-svn: 46200
|
| |
|
|
|
|
|
|
| |
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.
llvm-svn: 46144
|
| |
|
|
|
|
|
|
|
| |
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.
llvm-svn: 46029
|
| |
|
|
|
|
|
| |
Cosmetic changes to spacing to match gcc (some dejagnu
tests actually care).
llvm-svn: 45848
|
| |
|
|
| |
llvm-svn: 45494
|
| |
|
|
| |
llvm-svn: 45418
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 44359
|
| |
|
|
|
|
| |
for Darwin PPC, but it's not fully working yet.
llvm-svn: 44258
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
llvm-svn: 43688
|
| |
|
|
| |
llvm-svn: 42638
|
| |
|
|
|
|
| |
of comparing begin() and end().
llvm-svn: 42585
|
| |
|
|
|
|
| |
initializer is null.
llvm-svn: 42182
|
| |
|
|
|
|
|
| |
match the conditional that turns on exception handling emittion in the asm
printer.
llvm-svn: 42008
|