Prechádzať zdrojové kódy

* properly align case target labels

git-svn-id: trunk@6395 -
florian 18 rokov pred
rodič
commit
c5d56702ff
1 zmenil súbory, kde vykonal 3 pridanie a 0 odobranie
  1. 3 0
      compiler/ncgset.pas

+ 3 - 0
compiler/ncgset.pas

@@ -891,6 +891,7 @@ implementation
          { generate the instruction blocks }
          for i:=0 to blocks.count-1 do
            begin
+              current_asmdata.CurrAsmList.concat(Tai_align_abstract.create(current_settings.alignment.jumpalign));
               cg.a_label(current_asmdata.CurrAsmList,pcaseblock(blocks[i])^.blocklabel);
               secondpass(pcaseblock(blocks[i])^.statement);
               { don't come back to case line }
@@ -900,6 +901,7 @@ implementation
 {$endif OLDREGVARS}
               cg.a_jmp_always(current_asmdata.CurrAsmList,endlabel);
            end;
+         current_asmdata.CurrAsmList.concat(Tai_align_abstract.create(current_settings.alignment.jumpalign));
          { ...and the else block }
          cg.a_label(current_asmdata.CurrAsmList,elselabel);
          if assigned(elseblock) then
@@ -909,6 +911,7 @@ implementation
               load_all_regvars(current_asmdata.CurrAsmList);
 {$endif OLDREGVARS}
            end;
+         current_asmdata.CurrAsmList.concat(Tai_align_abstract.create(current_settings.alignment.jumpalign));
          cg.a_label(current_asmdata.CurrAsmList,endlabel);
 
          { Reset labels }