From 56f8424af6c730ec314b0e9a14522519210fff75 Mon Sep 17 00:00:00 2001 From: Jonas Maebe Date: Sat, 22 Sep 2007 19:01:44 +0000 Subject: [PATCH] * no longer remove AsmBlockStart and AsmBlockEnd markers from assembler blocks in procedures marked as inline. I have no idea why that was done, but it was the case already since a long time and caused a compiler crash when compiling tests/test/opt/tretopt1 (because it caused the assembler optimizer to process such assembler blocks, while their operand order is not guaranteed to be the AT&T one as expected by the optimizers) git-svn-id: trunk@8604 - --- compiler/ncgbas.pas | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/compiler/ncgbas.pas b/compiler/ncgbas.pas index 6a3913cc36..67a7d56c4a 100644 --- a/compiler/ncgbas.pas +++ b/compiler/ncgbas.pas @@ -210,7 +210,6 @@ interface var hp,hp2 : tai; i : longint; - skipnode : boolean; begin location_reset(location,LOC_VOID,OS_NO); @@ -231,7 +230,6 @@ interface while assigned(hp) do begin hp2:=tai(hp.getcopy); - skipnode:=false; case hp2.typ of ait_label : ReLabel(tasmsymbol(tai_label(hp2).labsym)); @@ -274,17 +272,8 @@ interface taicpu(hp2).CheckIfValid; {$endif x86} end; - ait_marker : - begin - { it's not an assembler block anymore } - if (tai_marker(hp2).kind in [mark_AsmBlockStart, mark_AsmBlockEnd]) then - skipnode:=true; - end; end; - if not skipnode then - current_asmdata.CurrAsmList.concat(hp2) - else - hp2.free; + current_asmdata.CurrAsmList.concat(hp2); hp:=tai(hp.next); end; { restore used symbols }