Revision tags: llvmorg-3.7.1-rc2, llvmorg-3.7.1-rc1 |
|
#
1bab191f |
| 05-Oct-2015 |
Alexandros Lamprineas <alexandros.lamprineas@arm.com> |
[MC layer][AArch64] llvm-mc accepts 4-bit immediate values for "msr pan, #imm", while only 1-bit immediate values should be valid. Changed encoding and decoding for msr pstate instructions.
Differen
[MC layer][AArch64] llvm-mc accepts 4-bit immediate values for "msr pan, #imm", while only 1-bit immediate values should be valid. Changed encoding and decoding for msr pstate instructions.
Differential Revision: http://reviews.llvm.org/D13011
llvm-svn: 249313
show more ...
|
#
50f17235 |
| 15-Sep-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
Revert r247692: Replace Triple with a new TargetTuple in MCTargetDesc/* and related. NFC.
Eric has replied and has demanded the patch be reverted.
llvm-svn: 247702
|
#
153010c5 |
| 15-Sep-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
Re-commit r247683: Replace Triple with a new TargetTuple in MCTargetDesc/* and related. NFC.
Summary: This is the first patch in the series to migrate Triple's (which are ambiguous) to TargetTuple's
Re-commit r247683: Replace Triple with a new TargetTuple in MCTargetDesc/* and related. NFC.
Summary: This is the first patch in the series to migrate Triple's (which are ambiguous) to TargetTuple's (which aren't).
For the moment, TargetTuple simply passes all requests to the Triple object it holds. Once it has replaced Triple, it will start to implement the interface in a more suitable way.
This change makes some changes to the public C++ API. In particular, InitMCSubtargetInfo(), createMCRelocationInfo(), and createMCSymbolizer() now take TargetTuples instead of Triples. The other public C++ API's have been left as-is for the moment to reduce patch size.
This commit also contains a trivial patch to clang to account for the C++ API change. Thanks go to Pavel Labath for fixing LLDB for me.
Reviewers: rengolin
Subscribers: jyknight, dschuff, arsenm, rampitec, danalbert, srhines, javed.absar, dsanders, echristo, emaste, jholewinski, tberghammer, ted, jfb, llvm-commits, rengolin
Differential Revision: http://reviews.llvm.org/D10969
llvm-svn: 247692
show more ...
|
#
c40de480 |
| 15-Sep-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
Revert r247684 - Replace Triple with a new TargetTuple ...
LLDB needs to be updated in the same commit.
llvm-svn: 247686
|
#
18d4b0da |
| 15-Sep-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
Replace Triple with a new TargetTuple in MCTargetDesc/* and related. NFC.
Summary: This is the first patch in the series to migrate Triple's (which are ambiguous) to TargetTuple's (which aren't).
F
Replace Triple with a new TargetTuple in MCTargetDesc/* and related. NFC.
Summary: This is the first patch in the series to migrate Triple's (which are ambiguous) to TargetTuple's (which aren't).
For the moment, TargetTuple simply passes all requests to the Triple object it holds. Once it has replaced Triple, it will start to implement the interface in a more suitable way.
This change makes some changes to the public C++ API. In particular, InitMCSubtargetInfo(), createMCRelocationInfo(), and createMCSymbolizer() now take TargetTuples instead of Triples. The other public C++ API's have been left as-is for the moment to reduce patch size.
This commit also contains a trivial patch to clang to account for the C++ API change.
Reviewers: rengolin
Subscribers: jyknight, dschuff, arsenm, rampitec, danalbert, srhines, javed.absar, dsanders, echristo, emaste, jholewinski, tberghammer, ted, jfb, llvm-commits, rengolin
Differential Revision: http://reviews.llvm.org/D10969
llvm-svn: 247683
show more ...
|
Revision tags: llvmorg-3.7.0, llvmorg-3.7.0-rc4, llvmorg-3.7.0-rc3, studio-1.4, llvmorg-3.7.0-rc2, llvmorg-3.7.0-rc1 |
|
#
f423f562 |
| 06-Jul-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
Change the last few internal StringRef triples into Triple objects.
Summary: This concludes the patch series to eliminate StringRef forms of GNU triples from the internals of LLVM that began in r239
Change the last few internal StringRef triples into Triple objects.
Summary: This concludes the patch series to eliminate StringRef forms of GNU triples from the internals of LLVM that began in r239036.
At this point, the StringRef-form of GNU Triples should only be used in the public API (including IR serialization) and a couple objects that directly interact with the API (most notably the Module class). The next step is to replace these Triple objects with the TargetTuple object that will represent our authoratative/unambiguous internal equivalent to GNU Triples.
Reviewers: rengolin
Subscribers: llvm-commits, jholewinski, ted, rengolin
Differential Revision: http://reviews.llvm.org/D10962
llvm-svn: 241472
show more ...
|
Revision tags: llvmorg-3.6.2, llvmorg-3.6.2-rc1 |
|
#
5f6f60d9 |
| 02-Jun-2015 |
Vladimir Sukharev <vladimir.sukharev@arm.com> |
[AArch64] Add v8.1a atomic instructions
Patch by: Tom Coxon
Reviewers: t.p.northover
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8501
llvm-svn: 238818
|
Revision tags: llvmorg-3.6.1 |
|
#
e9119e41 |
| 13-May-2015 |
Jim Grosbach <grosbach@apple.com> |
MC: Modernize MCOperand API naming. NFC.
MCOperand::Create*() methods renamed to MCOperand::create*().
llvm-svn: 237275
|
Revision tags: llvmorg-3.6.1-rc1 |
|
#
d49cb8fd |
| 16-Apr-2015 |
Vladimir Sukharev <vladimir.sukharev@arm.com> |
[AArch64] Add v8.1a "Limited Ordering Regions" extension
Reviewers: t.p.northover
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8499
Patch by: Tom Coxon
llvm-svn: 23
[AArch64] Add v8.1a "Limited Ordering Regions" extension
Reviewers: t.p.northover
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8499
Patch by: Tom Coxon
llvm-svn: 235105
show more ...
|
#
a98f6897 |
| 16-Apr-2015 |
Vladimir Sukharev <vladimir.sukharev@arm.com> |
[AArch64] Refactor AArch64NamedImmMapper to become dependent on subtarget features.
In order to introduce v8.1a-specific entities, Mappers should be aware of SubtargetFeatures available.
This patch
[AArch64] Refactor AArch64NamedImmMapper to become dependent on subtarget features.
In order to introduce v8.1a-specific entities, Mappers should be aware of SubtargetFeatures available.
This patch introduces refactoring, that will then allow to easily introduce:
- v8.1-specific "pan" PState for PStateMapper (PAN extension)
- v8.1-specific sysregs for SysRegMapper (LOR,VHE extensions)
Reviewers: jmolloy
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8496
Patch by Tom Coxon
llvm-svn: 235089
show more ...
|
Revision tags: llvmorg-3.5.2, llvmorg-3.5.2-rc1, llvmorg-3.6.0, llvmorg-3.6.0-rc4, llvmorg-3.6.0-rc3, llvmorg-3.6.0-rc2 |
|
#
186db431 |
| 18-Jan-2015 |
David Blaikie <dblaikie@gmail.com> |
unique_ptrify the RelInfo parameter to TargetRegistry::createMCSymbolizer
llvm-svn: 226416
|
Revision tags: llvmorg-3.6.0-rc1, llvmorg-3.5.1, llvmorg-3.5.1-rc2, llvmorg-3.5.1-rc1 |
|
#
7fc5b874 |
| 12-Nov-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Pass an ArrayRef to MCDisassembler::getInstruction.
With this patch MCDisassembler::getInstruction takes an ArrayRef<uint8_t> instead of a MemoryObject.
Even on X86 there is a maximum size an instr
Pass an ArrayRef to MCDisassembler::getInstruction.
With this patch MCDisassembler::getInstruction takes an ArrayRef<uint8_t> instead of a MemoryObject.
Even on X86 there is a maximum size an instruction can have. Given that, it seems way simpler and more efficient to just pass an ArrayRef to the disassembler instead of a MemoryObject and have it do a virtual call every time it wants some extra bytes.
llvm-svn: 221751
show more ...
|
#
4aa6bea7 |
| 10-Nov-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Misc style fixes. NFC.
This fixes a few cases of:
* Wrong variable name style. * Lines longer than 80 columns. * Repeated names in comments. * clang-format of the above.
This make the next patch a
Misc style fixes. NFC.
This fixes a few cases of:
* Wrong variable name style. * Lines longer than 80 columns. * Repeated names in comments. * clang-format of the above.
This make the next patch a lot easier to read.
llvm-svn: 221615
show more ...
|
#
e493f177 |
| 01-Oct-2014 |
Tom Coxon <tom.coxon@arm.com> |
[AArch64] Allow access to all system registers with MRS/MSR instructions.
The A64 instruction set includes a generic register syntax for accessing implementation-defined system registers. The syntax
[AArch64] Allow access to all system registers with MRS/MSR instructions.
The A64 instruction set includes a generic register syntax for accessing implementation-defined system registers. The syntax for these registers is: S<op0>_<op1>_<CRn>_<CRm>_<op2>
The encoding space permitted for implementation-defined system registers is: op0 op1 CRn CRm op2 11 xxx 1x11 xxxx xxx
The full encoding space can now be accessed: op0 op1 CRn CRm op2 xx xxx xxxx xxxx xxx
This is useful to anyone needing to write assembly code supporting new system registers before the assembler has learned the official names for them.
llvm-svn: 218753
show more ...
|
#
2c13e717 |
| 30-Sep-2014 |
Tom Coxon <tom.coxon@arm.com> |
[AArch64] Remove unnecessary whitespace. (Test commit)
llvm-svn: 218680
|
Revision tags: llvmorg-3.5.0 |
|
#
729b12ed |
| 02-Sep-2014 |
Alexey Samsonov <vonosmas@gmail.com> |
Fix left shifts of negative integers in AArch64 InstPrinter/Disassembler
Summary: Left shift of negative integer is an undefined behavior, and is reported by UBSan. It's ok for imm values to be nega
Fix left shifts of negative integers in AArch64 InstPrinter/Disassembler
Summary: Left shift of negative integer is an undefined behavior, and is reported by UBSan. It's ok for imm values to be negative, so we can just replace left shifts with multiplications.
Test Plan: check-llvm test suite
Reviewers: t.p.northover
Reviewed By: t.p.northover
Subscribers: aemerson, mcrosier, llvm-commits
Differential Revision: http://reviews.llvm.org/D5132
llvm-svn: 216910
show more ...
|
Revision tags: llvmorg-3.5.0-rc4, llvmorg-3.5.0-rc3, llvmorg-3.5.0-rc2 |
|
#
1f8930e3 |
| 25-Jul-2014 |
Benjamin Kramer <benny.kra@googlemail.com> |
Run sort_includes.py on the AArch64 backend.
No functionality change.
llvm-svn: 213938
|
#
35910d7f |
| 23-Jul-2014 |
Tim Northover <tnorthover@apple.com> |
AArch64: remove "arm64_be" support in favour of "aarch64_be".
There really is no arm64_be: it was a useful fiction to test big-endian support while both backends existed in parallel, but now the onl
AArch64: remove "arm64_be" support in favour of "aarch64_be".
There really is no arm64_be: it was a useful fiction to test big-endian support while both backends existed in parallel, but now the only platform that uses the name (iOS) doesn't have a big-endian variant, let alone one called "arm64_be".
llvm-svn: 213748
show more ...
|
Revision tags: llvmorg-3.5.0-rc1 |
|
#
3b0846e8 |
| 24-May-2014 |
Tim Northover <tnorthover@apple.com> |
AArch64/ARM64: move ARM64 into AArch64's place
This commit starts with a "git mv ARM64 AArch64" and continues out from there, renaming the C++ classes, intrinsics, and other target-local objects for
AArch64/ARM64: move ARM64 into AArch64's place
This commit starts with a "git mv ARM64 AArch64" and continues out from there, renaming the C++ classes, intrinsics, and other target-local objects for consistency.
"ARM64" test directories are also moved, and tests that began their life in ARM64 use an arm64 triple, those from AArch64 use an aarch64 triple. Both should be equivalent though.
This finishes the AArch64 merge, and everyone should feel free to continue committing as normal now.
llvm-svn: 209577
show more ...
|
Revision tags: llvmorg-3.4.2, llvmorg-3.4.2-rc1 |
|
#
e06fc4f0 |
| 29-Apr-2014 |
Craig Topper <craig.topper@gmail.com> |
[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 th
[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. AArch64 edition
llvm-svn: 207510
show more ...
|
Revision tags: llvmorg-3.4.1, llvmorg-3.4.1-rc2 |
|
#
84e68b29 |
| 22-Apr-2014 |
Chandler Carruth <chandlerc@gmail.com> |
[Modules] Fix potential ODR violations by sinking the DEBUG_TYPE definition below all of the header #include lines, lib/Target/... edition.
llvm-svn: 206842
|
#
a1bc0f56 |
| 15-Apr-2014 |
Lang Hames <lhames@gmail.com> |
[MC] Require an MCContext when constructing an MCDisassembler.
This patch re-introduces the MCContext member that was removed from MCDisassembler in r206063, and requires that an MCContext be passed
[MC] Require an MCContext when constructing an MCDisassembler.
This patch re-introduces the MCContext member that was removed from MCDisassembler in r206063, and requires that an MCContext be passed in at MCDisassembler construction time. (Previously the MCContext member had been initialized in an ad-hoc fashion after construction). The MCCContext member can be used by MCDisassembler sub-classes to construct constant or target-specific MCExprs.
This patch updates disassemblers for in-tree targets, and provides the MCRegisterInfo instance that some disassemblers were using through the MCContext (previously those backends were constructing their own MCRegisterInfo instances).
llvm-svn: 206241
show more ...
|
Revision tags: llvmorg-3.4.1-rc1 |
|
#
6c2f4d45 |
| 24-Feb-2014 |
Christian Pirker <cpirker@a-bix.com> |
Add AArch64 big endian Target (aarch64_be)
llvm-svn: 202024
|
#
e7a9ee5c |
| 03-Feb-2014 |
Craig Topper <craig.topper@gmail.com> |
Remove unnecessary include of AArch64GenInstrInfo.inc from AArch64Disassembler.cpp. None of the GET_ defines were set that would make the include do anything.
llvm-svn: 200677
|
#
cb402911 |
| 24-Jan-2014 |
Alp Toker <alp@nuanti.com> |
Fix known typos
Sweep the codebase for common typos. Includes some changes to visible function names that were misspelt.
llvm-svn: 200018
|