James Molloy
c42ea14f74
[ARM64-BE] Teach fast-isel about how to set up sub-word stack arguments for big endian calls.
...
SelectionDAG already knows about this, but fast-isel was ignorant.
llvm-svn: 208307
2014-05-08 12:53:50 +00:00
Tim Northover
18f8bb84fa
ARM64: make sure FastISel emits SSA MachineInstrs
...
We need to use a temporary register for a 2-step operation like REM.
llvm-svn: 208297
2014-05-08 10:30:56 +00:00
James Molloy
d3c401a2d0
[ARM64-BE] Fix fast-isel, and add appropriate RUN lines to appropriate tests.
...
llvm-svn: 208200
2014-05-07 12:33:55 +00:00
Joey Gouly
b0afd1b929
[ARM64] Correctly select ANDWri in FastISel.
...
http://reviews.llvm.org/D3598
llvm-svn: 207917
2014-05-03 17:27:06 +00:00
Chad Rosier
864e35db0a
[ARM64][fast-isel] Fast-isel doesn't know how to handle f128.
...
llvm-svn: 207659
2014-04-30 15:29:57 +00:00
Tim Northover
20ad359b77
AArch64/ARM64: use HS instead of CS & LO instead of CC.
...
On instructions using the NZCV register, a couple of conditions have dual
representations: HS/CS and LO/CC (meaning unsigned-higher-or-same/carry-set and
unsigned-lower/carry-clear). The first of these is more descriptive in most
circumstances, so we should print it.
llvm-svn: 207644
2014-04-30 13:14:03 +00:00
Tim Northover
41cec5c3cb
ARM64: make sure FastISel uses a GPR64 source in 64-bit extensions.
...
llvm-svn: 207620
2014-04-30 09:32:01 +00:00
Craig Topper
f85b7fc197
[C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition
...
llvm-svn: 207509
2014-04-29 07:58:25 +00:00
Craig Topper
062a2baef0
[C++] Use 'nullptr'. Target edition.
...
llvm-svn: 207197
2014-04-25 05:30:21 +00:00
Aaron Ballman
5f1378c2a4
Replacing a non-ASCII character in a comment with an ASCII character. Fixes a C4819 warning in MSVC.
...
llvm-svn: 206403
2014-04-16 17:09:20 +00:00
Tim Northover
f70577b1cd
ARM64: add constraints to various FastISel operations
...
llvm-svn: 206284
2014-04-15 13:59:53 +00:00
Aaron Ballman
d1726ee8fa
Fixing warnings in the MSVC build. No functional changes intended.
...
llvm-svn: 205301
2014-04-01 12:22:20 +00:00
Tim Northover
00ed9964c6
ARM64: initial backend import
...
This adds a second implementation of the AArch64 architecture to LLVM,
accessible in parallel via the "arm64" triple. The plan over the
coming weeks & months is to merge the two into a single backend,
during which time thorough code review should naturally occur.
Everything will be easier with the target in-tree though, hence this
commit.
llvm-svn: 205090
2014-03-29 10:18:08 +00:00