瀏覽代碼

x86 BuildInsTabMemRefSizeInfoCache: don't read past end of instab

Jonas Maebe 3 年之前
父節點
當前提交
2ce3656ed3
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      compiler/x86/aasmcpu.pas

+ 2 - 1
compiler/x86/aasmcpu.pas

@@ -5033,7 +5033,8 @@ implementation
           RegBCSTZMMSizeMask := 0;
           RegBCSTZMMSizeMask := 0;
           ExistsMemRef       := false;
           ExistsMemRef       := false;
 
 
-          while (insentry^.opcode=AsmOp) do
+          while (insentry<=@instab[high(instab)]) and
+                (insentry^.opcode=AsmOp) do
           begin
           begin
             MRefInfo         := msiUnknown;
             MRefInfo         := msiUnknown;