mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
CodeGen: Allow aliases to be overridden by variables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224827 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0f1bf97d04
commit
d36cad9914
@ -337,6 +337,8 @@ void AsmPrinter::EmitGlobalVariable(const GlobalVariable *GV) {
|
||||
if (!GV->hasInitializer()) // External globals require no extra code.
|
||||
return;
|
||||
|
||||
GVSym->redefineIfPossible();
|
||||
|
||||
if (MAI->hasDotTypeDotSizeDirective())
|
||||
OutStreamer.EmitSymbolAttribute(GVSym, MCSA_ELF_TypeObject);
|
||||
|
||||
|
@ -3,10 +3,21 @@ 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* @var
|
||||
|
Loading…
Reference in New Issue
Block a user