Follow-up to r235963: this matches other assemblers and is less
unexpected (e.g. PR23227).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252681
91177308-0d34-0410-b5e6-
96231b3b80d8
UseIntegratedAssembler = true;
- // FIXME: For now keep the previous behavior, AShr. Need to double-check
- // other COFF-targeting assemblers and change this if necessary.
+ // At least MSVC inline-asm does AShr.
UseLogicalShr = false;
}
UseIntegratedAssembler = true;
SetDirectiveSuppressesReloc = true;
-
- // FIXME: For now keep the previous behavior, AShr, matching the previous
- // behavior of as(1) (both -q and -Q: resp. LLVM and gas v1.38).
- // If/when this changes, the AArch64 Darwin special case can go away.
- UseLogicalShr = false;
}
UseDataRegionDirectives = true;
ExceptionsType = ExceptionHandling::DwarfCFI;
-
- // AArch64 Darwin doesn't have the baggage of X86/ARM, so it's fine to use
- // LShr instead of AShr.
- UseLogicalShr = true;
}
const MCExpr *AArch64MCAsmInfoDarwin::getExprForPersonalitySymbol(
// RUN: llvm-mc -triple x86_64-unknown-unknown-elf %s | FileCheck %s --check-prefix=CHECK
+// RUN: llvm-mc -triple x86_64-unknown-darwin %s | FileCheck %s --check-prefix=CHECK
// RUN: llvm-mc -triple x86_64-pc-windows-msvc %s | FileCheck %s --check-prefix=MSVC
-// RUN: llvm-mc -triple x86_64-unknown-darwin %s | FileCheck %s --check-prefix=DARWIN
.data
// CHECK: .quad 3
-// Both COFF and Darwin still use AShr.
+// MSVC does AShr.
// MSVC: .quad -1
-// DARWIN: .quad -1
.quad (~0 >> 62)
check_expr 1 | 2, 3
check_expr 1 << 1, 2
check_expr 2 >> 1, 1
- check_expr (~0 >> 1), -1
+ check_expr (~0 >> 62), 3
check_expr 3 - 2, 1
check_expr 1 ^ 3, 2
check_expr 1 && 2, 1