mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 14:09:20 +02:00
* In pure-assembler procedures, don't allocate/free any registers around the only assembler node. Such procedures don't use virtual registers or register allocator.
git-svn-id: trunk@32608 -
This commit is contained in:
parent
894e61f6bd
commit
5709127a39
@ -1073,6 +1073,10 @@ implementation
|
|||||||
{ Read first the _ASM statement }
|
{ Read first the _ASM statement }
|
||||||
consume(_ASM);
|
consume(_ASM);
|
||||||
|
|
||||||
|
{ Force an empty register list for pure assembler routines,
|
||||||
|
so that pass2 won't allocate volatile registers for them. }
|
||||||
|
asmstat.has_registerlist:=(po_assembler in current_procinfo.procdef.procoptions);
|
||||||
|
|
||||||
{ END is read, got a list of changed registers? }
|
{ END is read, got a list of changed registers? }
|
||||||
if try_to_consume(_LECKKLAMMER) then
|
if try_to_consume(_LECKKLAMMER) then
|
||||||
begin
|
begin
|
||||||
|
Loading…
Reference in New Issue
Block a user