浏览代码

* tcg8086.g_copyvaluepara_openarray: fix for the case where ref.segment is
specified, but equal to DS in the current memory model -> call the high level
code generator with a near pointer type in order to force the segment to be
ignored

git-svn-id: trunk@27716 -

nickysn 11 年之前
父节点
当前提交
906d828ee0
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      compiler/i8086/cgcpu.pas

+ 1 - 1
compiler/i8086/cgcpu.pas

@@ -1892,7 +1892,7 @@ unit cgcpu;
         if ((ref.segment=NR_NO) and (segment_regs_equal(NR_SS,NR_DS) or (ref.base<>NR_BP))) or
            (is_segment_reg(ref.segment) and segment_regs_equal(ref.segment,NR_DS)) then
           begin
-            a_loadaddr_ref_reg(list,ref,NR_SI);
+            hlcg.a_loadaddr_ref_reg(list,voidnearpointertype,voidnearpointertype,ref,NR_SI);
             saved_ds:=false;
           end
         else