OSDN Git Service

Initial support for Neon scalar instructions.
authorJiangning Liu <jiangning.liu@arm.com>
Tue, 24 Sep 2013 02:47:27 +0000 (02:47 +0000)
committerJiangning Liu <jiangning.liu@arm.com>
Tue, 24 Sep 2013 02:47:27 +0000 (02:47 +0000)
commit477fc628b3c9ce1c970d4a678dd5607b15242cc8
tree9f6708fbdd79d63957d03eaed153c19d44f4fb5e
parent44e84417679db0f2dc7e93f8153ba7ef1812f5d3
Initial support for Neon scalar instructions.

Patch by Ana Pazos.

1.Added support for v1ix and v1fx types.
2.Added Scalar Pairwise Reduce instructions.
3.Added initial implementation of Scalar Arithmetic instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191263 91177308-0d34-0410-b5e6-96231b3b80d8
44 files changed:
include/llvm/CodeGen/ValueTypes.h
include/llvm/CodeGen/ValueTypes.td
include/llvm/IR/Intrinsics.td
include/llvm/IR/IntrinsicsAArch64.td
lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
lib/IR/Function.cpp
lib/IR/ValueTypes.cpp
lib/Target/AArch64/AArch64CallingConv.td
lib/Target/AArch64/AArch64ISelLowering.cpp
lib/Target/AArch64/AArch64InstrFormats.td
lib/Target/AArch64/AArch64InstrInfo.td
lib/Target/AArch64/AArch64InstrNEON.td
lib/Target/AArch64/AArch64RegisterInfo.td
test/CodeGen/AArch64/neon-add-sub.ll
test/CodeGen/AArch64/neon-copy.ll
test/CodeGen/AArch64/neon-rounding-shift.ll
test/CodeGen/AArch64/neon-saturating-add-sub.ll
test/CodeGen/AArch64/neon-saturating-rounding-shift.ll
test/CodeGen/AArch64/neon-saturating-shift.ll
test/CodeGen/AArch64/neon-scalar-add-sub.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-reduce-pairwise.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-rounding-shift.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-saturating-add-sub.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-saturating-rounding-shift.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-saturating-shift.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-scalar-shift.ll [new file with mode: 0644]
test/CodeGen/AArch64/neon-shift.ll
test/MC/AArch64/neon-add-pairwise.s
test/MC/AArch64/neon-add-sub-instructions.s
test/MC/AArch64/neon-diagnostics.s
test/MC/AArch64/neon-rounding-shift.s
test/MC/AArch64/neon-saturating-add-sub.s
test/MC/AArch64/neon-saturating-rounding-shift.s
test/MC/AArch64/neon-saturating-shift.s
test/MC/AArch64/neon-scalar-add-sub.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-reduce-pairwise.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-rounding-shift.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-saturating-add-sub.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-saturating-rounding-shift.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-saturating-shift.s [new file with mode: 0644]
test/MC/AArch64/neon-scalar-shift.s [new file with mode: 0644]
test/MC/AArch64/neon-shift.s
utils/TableGen/CodeGenTarget.cpp
utils/TableGen/IntrinsicEmitter.cpp