Changes
Summary
- [ARM] Remove non-existent cpu arm1176j-s and use mpcore for v6k The ARMTargetParser.def contains an entry for arm1176j-s which is the default for the ArmV6K architecture. This cpu does not exist, there are only arm1176jz-s and arm1176jzf-s and they are both architecture ArmV6KZ. The only CPUs that are actually ArmV6K are the mpcore, mpcore_nofpu and later revisions of the arm1136 family r1px (which we don't have a table entry for). This patch removes the arm1176j-s and makes mpcore the default for armv6k. Differential Revision: https://reviews.llvm.org/D52594
- [ARM] Allow execute only code on Cortex-m23 The NoMovt feature prevents the use of MOVW/MOVT instructions on Cortex-M23 for performance reasons. These instructions are required for execute only code so NoMovt should be disabled when that option is enabled. Differential Revision: https://reviews.llvm.org/D52551
- Remove extra whitespace. NFC. (test commit)
- [ARM][v8.5A] Add speculation barriers SSBB and PSSBB This adds two new barrier instructions which can be used to restrict speculative execution of load instructions. Patch by Pablo Barrio! Differential revision: https://reviews.llvm.org/D52484
Change Type | Path in Repository | Path in Workspace |
---|---|---|
![]() | /llvm/trunk/include/llvm/Support/ARMTargetParser.def | trunk/include/llvm/Support/ARMTargetParser.def |
![]() | /llvm/trunk/unittests/Support/TargetParserTest.cpp | trunk/unittests/Support/TargetParserTest.cpp |
Change Type | Path in Repository | Path in Workspace |
![]() | /llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp | trunk/lib/Target/ARM/ARMSubtarget.cpp |
![]() | /llvm/trunk/test/CodeGen/ARM/execute-only-big-stack-frame.ll | trunk/test/CodeGen/ARM/execute-only-big-stack-frame.ll |
![]() | /llvm/trunk/test/CodeGen/ARM/execute-only-section.ll | trunk/test/CodeGen/ARM/execute-only-section.ll |
![]() | /llvm/trunk/test/CodeGen/ARM/execute-only.ll | trunk/test/CodeGen/ARM/execute-only.ll |
Change Type | Path in Repository | Path in Workspace |
![]() | /llvm/trunk/lib/Target/AArch64/SVEInstrFormats.td | trunk/lib/Target/AArch64/SVEInstrFormats.td |
Change Type | Path in Repository | Path in Workspace |
![]() | /llvm/trunk/lib/Target/ARM/ARMInstrInfo.td | trunk/lib/Target/ARM/ARMInstrInfo.td |
![]() | /llvm/trunk/lib/Target/ARM/ARMInstrThumb2.td | trunk/lib/Target/ARM/ARMInstrThumb2.td |
![]() | /llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp |
![]() | /llvm/trunk/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp | trunk/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp |
![]() | /llvm/trunk/test/MC/ARM/basic-arm-instructions.s | trunk/test/MC/ARM/basic-arm-instructions.s |
![]() | /llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s | trunk/test/MC/ARM/basic-thumb2-instructions.s |
![]() | /llvm/trunk/test/MC/ARM/csdb-errors.s | trunk/test/MC/ARM/csdb-errors.s |
![]() | /llvm/trunk/test/MC/ARM/csdb.s | trunk/test/MC/ARM/csdb.s |
![]() | /llvm/trunk/test/MC/ARM/speculation-barriers-errors.s | trunk/test/MC/ARM/speculation-barriers-errors.s |
![]() | /llvm/trunk/test/MC/ARM/speculation-barriers.s | trunk/test/MC/ARM/speculation-barriers.s |
![]() | /llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions.txt | trunk/test/MC/Disassembler/ARM/basic-arm-instructions.txt |
![]() | /llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt | trunk/test/MC/Disassembler/ARM/thumb2.txt |