• Home
  • History
  • Annotate
  • only in /external/llvm/test/MC/AArch64/
History log of /external/llvm/test/MC/AArch64/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
87773c318fcee853fb34a80a10c4347d523bdafb 01-Aug-2013 Tim Northover <tnorthover@apple.com> AArch64: add initial NEON support

Patch by Ana Pazos.

- Completed implementation of instruction formats:
AdvSIMD three same
AdvSIMD modified immediate
AdvSIMD scalar pairwise

- Completed implementation of instruction classes
(some of the instructions in these classes
belong to yet unfinished instruction formats):
Vector Arithmetic
Vector Immediate
Vector Pairwise Arithmetic

- Initial implementation of instruction formats:
AdvSIMD scalar two-reg misc
AdvSIMD scalar three same

- Intial implementation of instruction class:
Scalar Arithmetic

- Initial clang changes to support arm v8 intrinsics.
Note: no clang changes for scalar intrinsics function name mangling yet.

- Comprehensive test cases for added instructions
To verify auto codegen, encoding, decoding, diagnosis, intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187567 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-diagnostics.s
asic-a64-instructions.s
eon-aba-abd.s
eon-add-pairwise.s
eon-add-sub-instructions.s
eon-bitwise-instructions.s
eon-compare-instructions.s
eon-diagnostics.s
eon-facge-facgt.s
eon-frsqrt-frecp.s
eon-halving-add-sub.s
eon-max-min-pairwise.s
eon-max-min.s
eon-mla-mls-instructions.s
eon-mov.s
eon-mul-div-instructions.s
eon-rounding-halving-add.s
eon-rounding-shift.s
eon-saturating-add-sub.s
eon-saturating-rounding-shift.s
eon-saturating-shift.s
eon-shift.s
oneon-diagnostics.s
73477b9f32da6488f2883f33fd17fa0de61f2bd1 03-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Prefix failing commands with not to make clear they are expected to fail.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185554 91177308-0d34-0410-b5e6-96231b3b80d8
lf-objdump.s
icv3-regs-diagnostics.s
race-regs-diagnostics.s
7130a9561787cf14d5349d22cde1e0b3a4d5c21d 23-Jun-2013 Tim Northover <tnorthover@apple.com> AArch64: fix overzealous NEXTing for Windows testing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184667 91177308-0d34-0410-b5e6-96231b3b80d8
ls-relocs.s
7338de37a802970857079b5a532c5dd50d0a6d5d 17-Jun-2013 Tim Northover <tnorthover@apple.com> AArch64: print relocation addends if present on AArch64

llvm-objdump should provide some way of printing out the addends present in the
.rela sections for debugging purposes if nothing else.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184072 91177308-0d34-0410-b5e6-96231b3b80d8
lf-reloc-addend.s
7486d92a6c949a193bb75c0ffa0170eeb2fabb80 30-May-2013 Rafael Espindola <rafael.espindola@gmail.com> Change how we iterate over relocations on ELF.

For COFF and MachO, sections semantically have relocations that apply to them.
That is not the case on ELF.

In relocatable objects (.o), a section with relocations in ELF has offsets to
another section where the relocations should be applied.

In dynamic objects and executables, relocations don't have an offset, they have
a virtual address. The section sh_info may or may not point to another section,
but that is not actually used for resolving the relocations.

This patch exposes that in the ObjectFile API. It has the following advantages:

* Most (all?) clients can handle this more efficiently. They will normally walk
all relocations, so doing an effort to iterate in a particular order doesn't
save time.

* llvm-readobj now prints relocations in the same way the native readelf does.

* probably most important, relocations that don't point to any section are now
visible. This is the case of relocations in the rela.dyn section. See the
updated relocation-executable.test for example.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182908 91177308-0d34-0410-b5e6-96231b3b80d8
lf-globaladdress.ll
lf-reloc-addsubimm.s
lf-reloc-condbr.s
lf-reloc-ldrlit.s
lf-reloc-ldstunsimm.s
lf-reloc-movw.s
lf-reloc-pcreladdressing.s
lf-reloc-tstb.s
lf-reloc-uncondbrimm.s
ls-relocs.s
b6ad2bd51195f7675db0f71c5826a12a2b7090fc 12-Apr-2013 Tim Northover <Tim.Northover@arm.com> AArch64: use full triple for ELF tests

These tests rely specifically on the names of ELF relocations, let alone any
other detail. There's no way they'd work if LLVM was emitting something else by
default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179376 91177308-0d34-0410-b5e6-96231b3b80d8
lf-globaladdress.ll
lf-objdump.s
lf-reloc-addsubimm.s
lf-reloc-condbr.s
lf-reloc-ldrlit.s
lf-reloc-ldstunsimm.s
lf-reloc-movw.s
lf-reloc-pcreladdressing.s
lf-reloc-tstb.s
lf-reloc-uncondbrimm.s
ls-relocs.s
15e883787f38b7c424e9de4ec8485ad9e32603b0 12-Apr-2013 Tim Northover <Tim.Northover@arm.com> AArch64: remove over-zealous use of CHECK-NEXT

It turns out some platforms (e.g. Windows) lay out their llvm-mc slightly
differently with extra newlines; there was no real reason for the test lines to
be consecutive, so this relaxes the FileCheck.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179375 91177308-0d34-0410-b5e6-96231b3b80d8
ls-relocs.s
f89da7210b09a0a0f7c9ee216cd54dca03c6b64a 12-Apr-2013 Nico Rieck <nico.rieck@gmail.com> Replace coff-/elf-dump with llvm-readobj

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179361 91177308-0d34-0410-b5e6-96231b3b80d8
lf-globaladdress.ll
lf-reloc-addsubimm.s
lf-reloc-condbr.s
lf-reloc-ldrlit.s
lf-reloc-ldstunsimm.s
lf-reloc-movw.s
lf-reloc-pcreladdressing.s
lf-reloc-tstb.s
lf-reloc-uncondbrimm.s
ls-relocs.s
4385f5dfced4e14bc59dfedb1f75116c0aabbc36 03-Apr-2013 Tim Northover <Tim.Northover@arm.com> AArch64: implement ETMv4 trace system registers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178637 91177308-0d34-0410-b5e6-96231b3b80d8
race-regs-diagnostics.s
race-regs.s
42a1b2f0b196633c0327801e810fc98849a00c47 28-Mar-2013 Tim Northover <Tim.Northover@arm.com> AArch64: implement GICv3 system registers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178236 91177308-0d34-0410-b5e6-96231b3b80d8
icv3-regs-diagnostics.s
icv3-regs.s
c37aa995e3e55c1bdb17a73c3160edf0426b1a1a 11-Feb-2013 Tim Northover <Tim.Northover@arm.com> AArch64: Undo change to how test was run

This broke on Windows, presumably due to interleaving of output streams.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174873 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-diagnostics.s
b5161863866b64498a7faa20e612c55de4bca6f8 11-Feb-2013 Tim Northover <Tim.Northover@arm.com> Make use of DiagnosticType to provide better AArch64 diagnostics.

This gives a DiagnosticType to all AsmOperands in sight. This replaces all
"invalid operand" diagnostics with something more specific. The messages given
should still be sufficiently vague that they're not usually actively misleading
when LLVM guesses your instruction incorrectly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174871 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-diagnostics.s
cbff068398a84ed488b7fdab5fea8e05500d385a 06-Feb-2013 Tim Northover <Tim.Northover@arm.com> Add AArch64 CRC32 instructions

These instructions are a late addition to the architecture, and may
yet end up behind an optional attribute, but for now they're available
at all times.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174496 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-instructions.s
9e3b31345f0d17b757e183a8384db92616256926 06-Feb-2013 Tim Northover <Tim.Northover@arm.com> Add icache prefetch operations to AArch64

This adds hints to the various "prfm" instructions so that they can
affect the instruction cache as well as the data cache.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174495 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-instructions.s
7bc8414ee99967cb3a89de663c0510563476aa32 01-Feb-2013 Tim Northover <Tim.Northover@arm.com> Add explicit triples to AArch64 tests

Only Linux is supported at the moment, and other platforms quickly fault. As a
result these tests would fail on non-Linux hosts. It may be worth making the
tests more generic again as more platforms are supported.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174170 91177308-0d34-0410-b5e6-96231b3b80d8
lf-globaladdress.ll
72062f5744557e270a38192554c3126ea5f97434 31-Jan-2013 Tim Northover <Tim.Northover@arm.com> Add AArch64 as an experimental target.

This patch adds support for AArch64 (ARM's 64-bit architecture) to
LLVM in the "experimental" category. Currently, it won't be built
unless requested explicitly.

This initial commit should have support for:
+ Assembly of all scalar (i.e. non-NEON, non-Crypto) instructions
(except the late addition CRC instructions).
+ CodeGen features required for C++03 and C99.
+ Compilation for the "small" memory model: code+static data <
4GB.
+ Absolute and position-independent code.
+ GNU-style (i.e. "__thread") TLS.
+ Debugging information.

The principal omission, currently, is performance tuning.

This patch excludes the NEON support also reviewed due to an outbreak of
batshit insanity in our legal department. That will be committed soon bringing
the changes to precisely what has been approved.

Further reviews would be gratefully received.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174054 91177308-0d34-0410-b5e6-96231b3b80d8
asic-a64-diagnostics.s
asic-a64-instructions.s
lf-globaladdress.ll
lf-objdump.s
lf-reloc-addsubimm.s
lf-reloc-condbr.s
lf-reloc-ldrlit.s
lf-reloc-ldstunsimm.s
lf-reloc-movw.s
lf-reloc-pcreladdressing.s
lf-reloc-tstb.s
lf-reloc-uncondbrimm.s
it.local.cfg
apping-across-sections.s
apping-within-section.s
ls-relocs.s