Fangrui Song 28bda77843
Introduce MCAsmInfo::UsesSetToEquateSymbol and prefer = to .set
Introduce MCAsmInfo::UsesSetToEquateSymbol to control the preferred
syntax for symbol equating. We now favor the more readable and common
`symbol = expression` syntax over `.set`. This aligns with pre- https://reviews.llvm.org/D44256 behavior.

On Apple platforms, this resolves a clang -S vs -c behavior difference (resolves #104623).

For targets whose = support is unconfirmed, UsesSetToEquateSymbol is set to false.
This also minimizes test updates.

Pull Request: https://github.com/llvm/llvm-project/pull/142289
2025-06-11 22:19:31 -07:00

24 lines
471 B
LLVM

; RUN: llc < %s | FileCheck %s
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
module asm "pselect = __pselect"
module asm "var = __var"
module asm "alias = __alias"
; CHECK: pselect = __pselect
; CHECK: var = __var
; CHECK: alias = __alias
; CHECK: pselect:
; CHECK: retq
define void @pselect() {
ret void
}
; CHECK: var:
; CHECK: .long 0
@var = global i32 0
; CHECK: alias = var
@alias = alias i32, ptr @var