mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-26 05:32:25 +00:00
[mips] [IAS] Allow .set assignments for already defined symbols.
Summary: This is not possible when using the IAS for MIPS, but it is possible when using the IAS for other architectures and when using GAS for MIPS. Reviewers: dsanders Reviewed By: dsanders Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D8578 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234316 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
838c24a7c8
commit
db3b3a0b9f
@ -3579,11 +3579,7 @@ bool MipsAsmParser::parseSetAssignment() {
|
||||
if (Parser.parseExpression(Value))
|
||||
return reportParseError("expected valid expression after comma");
|
||||
|
||||
// Check if the Name already exists as a symbol.
|
||||
MCSymbol *Sym = getContext().LookupSymbol(Name);
|
||||
if (Sym)
|
||||
return reportParseError("symbol already defined");
|
||||
Sym = getContext().GetOrCreateSymbol(Name);
|
||||
MCSymbol *Sym = getContext().GetOrCreateSymbol(Name);
|
||||
Sym->setVariableValue(Value);
|
||||
|
||||
return false;
|
||||
|
18
test/MC/Mips/set-defined-symbol.s
Normal file
18
test/MC/Mips/set-defined-symbol.s
Normal file
@ -0,0 +1,18 @@
|
||||
# RUN: llvm-mc %s -arch=mips -mcpu=mips32 -filetype=obj -o - | \
|
||||
# RUN: llvm-objdump -d -r -arch=mips - | FileCheck %s
|
||||
|
||||
.global foo
|
||||
.weak bar
|
||||
.set bar, b
|
||||
.set foo, b
|
||||
.set foo, a
|
||||
a:
|
||||
nop
|
||||
# CHECK-NOT: a:
|
||||
# CHECK: foo:
|
||||
|
||||
b:
|
||||
nop
|
||||
# CHECK-NOT: b:
|
||||
# CHECK-NOT: foo:
|
||||
# CHECK: bar:
|
Loading…
Reference in New Issue
Block a user