The issue is uncovered by #47698: for assembly files, -triple= specifies the full target triple while -arch= merely sets the architecture part of the default target triple, leaving a target triple which may not make sense, e.g. riscv64-apple-darwin. Therefore, -arch= is error-prone and not recommended for tests. The issue has been benign as we recognize $unknown-apple-darwin as ELF instead of rejecting it outrightly. Due to the nature of the issue, we don't see the issue in tests using architectures that any of Mach-O/COFF/XCOFF supports.
16 lines
1017 B
ArmAsm
16 lines
1017 B
ArmAsm
# RUN: not llvm-mc -triple=mips -mcpu=mips32 -mattr=+mt < %s 2>%t1
|
|
# RUN: FileCheck %s < %t1
|
|
dmt 4 # CHECK: error: invalid operand for instruction
|
|
dmt $4, $5 # CHECK: error: invalid operand for instruction
|
|
dmt $5, 0($4) # CHECK: error: invalid operand for instruction
|
|
emt 4 # CHECK: error: invalid operand for instruction
|
|
emt $4, $5 # CHECK: error: invalid operand for instruction
|
|
emt $5, 0($5) # CHECK: error: invalid operand for instruction
|
|
dvpe 4 # CHECK: error: invalid operand for instruction
|
|
dvpe $4, $5 # CHECK: error: invalid operand for instruction
|
|
dvpe $5, 0($4) # CHECK: error: invalid operand for instruction
|
|
evpe 4 # CHECK: error: invalid operand for instruction
|
|
evpe $4, $5 # CHECK: error: invalid operand for instruction
|
|
evpe $5, 0($5) # CHECK: error: invalid operand for instruction
|
|
# FIXME: add tests for mftr/mttr.
|