1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/MC/ARM/thumb_func-implies-thumb.s
LemonBoy 8144a0e6eb [AsmParser][ARM] Make .thumb_func imply .thumb
GNU as documentation states that a `.thumb_func` directive implies `.thumb`, teach the asm parser to switch mode whenever it's encountered. On the other hand the labeled form, exclusive to Apple's toolchain, doesn't switch mode at all.

Reviewed By: nickdesaulniers, peter.smith

Differential Revision: https://reviews.llvm.org/D101975
2021-05-07 12:13:36 +02:00

32 lines
513 B
ArmAsm

@ RUN: llvm-mc -triple=armv7-darwin- -show-encoding < %s | FileCheck %s
.syntax unified
.text
.arm
@ Ensure the plain form switches mode.
.thumb_func
@ CHECK: .code 16
@ CHECK-LABEL: foo
foo:
bx lr
.arm
@ Ensure the labeled form doesn't switch mode.
.thumb_func bar
@ CHECK-NOT: .code 16
@ CHECK-LABEL: bar
bar:
bx lr
.arm
@ Ensure the nop is assembled in thumb mode, even though the baz symbol is
@ defined later.
.thumb_func
nop
@ CHECK: .code 16
@ CHECK-NEXT: nop
@ CHECK-LABEL: baz
baz:
bx lr