
AArch64 uses MCAsmInfo::AssemblerDialect to control the style of emitted Neon assembly. E.g. Apple platforms use AsmWriterVariantTy::Apple by default which collides with InlineAsm::AD_Intel (both value 1). Checking for inlineasm dialects on non-X86 platforms can thus lead to problems.
24 lines
646 B
C
24 lines
646 B
C
// REQUIRES: aarch64-registered-target
|
|
// RUN: %clang_cc1 -triple arm64-apple-ios -S -o - %s | FileCheck %s
|
|
|
|
// CHECK: _restartable_function:
|
|
// CHECK-NEXT: ldr x11, [x0]
|
|
// CHECK-NEXT: add x11, x11, #1
|
|
// CHECK-NEXT: str x11, [x0]
|
|
// CHECK-NEXT: Ltmp0:
|
|
// CHECK-NEXT: b Ltmp0
|
|
// CHECK-NEXT: LExit_restartable_function:
|
|
// CHECK-NEXT: ret
|
|
asm(".align 4\n"
|
|
" .text\n"
|
|
" .private_extern _restartable_function\n"
|
|
"_restartable_function:\n"
|
|
" ldr x11, [x0]\n"
|
|
" add x11, x11, #1\n"
|
|
" str x11, [x0]\n"
|
|
"1:\n"
|
|
" b 1b\n"
|
|
"LExit_restartable_function:\n"
|
|
" ret\n"
|
|
);
|