mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-13 04:09:33 +02:00
* make local variables in assembler blocks working again after r44933
* test for #37218 git-svn-id: trunk@45667 -
This commit is contained in:
parent
4e1e35aef5
commit
80111a0a60
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -18331,6 +18331,7 @@ tests/webtbs/tw37136.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw37154.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw3719.pp svneol=native#text/plain
|
||||
tests/webtbs/tw3721.pp svneol=native#text/plain
|
||||
tests/webtbs/tw37218.pp svneol=native#text/pascal
|
||||
tests/webtbs/tw3742.pp svneol=native#text/plain
|
||||
tests/webtbs/tw3751.pp svneol=native#text/plain
|
||||
tests/webtbs/tw3758.pp svneol=native#text/plain
|
||||
|
@ -838,7 +838,7 @@ Unit racpugas;
|
||||
else
|
||||
Message1(sym_e_unknown_id,expr);
|
||||
end
|
||||
else
|
||||
else if oper.opr.typ<>OPR_LOCAL then
|
||||
begin
|
||||
oper.InitRef;
|
||||
MaybeAddGotAddrMode;
|
||||
|
@ -1098,7 +1098,7 @@ end;
|
||||
|
||||
procedure TOperand.InitRef;
|
||||
{*********************************************************************}
|
||||
{ Description: This routine first check if the opcode is of }
|
||||
{ Description: This routine first check if the opcode is of }
|
||||
{ type OPR_NONE, or OPR_REFERENCE , if not it gives out an error. }
|
||||
{ If the operandtype = OPR_NONE or <> OPR_REFERENCE then it sets up }
|
||||
{ the operand type to OPR_REFERENCE, as well as setting up the ref }
|
||||
|
22
tests/webtbs/tw37218.pp
Normal file
22
tests/webtbs/tw37218.pp
Normal file
@ -0,0 +1,22 @@
|
||||
{ %CPU=aarch64 }
|
||||
program project1;
|
||||
uses crt;
|
||||
procedure test;
|
||||
var a:uint64;
|
||||
begin
|
||||
a:=1;
|
||||
asm
|
||||
mov x4,# 0
|
||||
mov x12,# 1
|
||||
add x4,x4,x12,lsl # 2
|
||||
str x4, a
|
||||
end;
|
||||
|
||||
writeln(a);
|
||||
if a<>4 then
|
||||
halt(1);
|
||||
end;
|
||||
|
||||
begin
|
||||
test;
|
||||
end.
|
Loading…
Reference in New Issue
Block a user