mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Only emit movw on ARMv6T2+
Fix PR18364. Patch by Dimitry Andric. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216989 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4becee113c
commit
ddcf3bd0a0
@ -3426,7 +3426,8 @@ def : ARMPat<(ARMaddc GPR:$src, imm0_65535_neg:$imm),
|
||||
def : ARMPat<(ARMadde GPR:$src, so_imm_not:$imm, CPSR),
|
||||
(SBCri GPR:$src, so_imm_not:$imm)>;
|
||||
def : ARMPat<(ARMadde GPR:$src, imm0_65535_neg:$imm, CPSR),
|
||||
(SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>;
|
||||
(SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>,
|
||||
Requires<[IsARM, HasV6T2]>;
|
||||
|
||||
// Note: These are implemented in C++ code, because they have to generate
|
||||
// ADD/SUBrs instructions, which use a complex pattern that a xform function
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llc -mtriple=arm-eabi %s -o - | FileCheck %s
|
||||
; RUN: llc -mtriple=armv6t2-eabi %s -o - | FileCheck %s
|
||||
|
||||
define i64 @f1(i64 %a, i64 %b) {
|
||||
; CHECK-LABEL: f1:
|
||||
|
Loading…
Reference in New Issue
Block a user