소스 검색

* introduce a case statement, based on the calling convention in i386's
tcpuparamanager.get_saved_registers_int

git-svn-id: trunk@38902 -

nickysn 7 년 전
부모
커밋
80a9dab99a
1개의 변경된 파일16개의 추가작업 그리고 1개의 파일을 삭제
  1. 16 1
      compiler/i386/cpupara.pas

+ 16 - 1
compiler/i386/cpupara.pas

@@ -291,7 +291,22 @@ unit cpupara;
       const
         saveregs : array[0..3] of tsuperregister = (RS_EBX,RS_ESI,RS_EDI,RS_EBP);
       begin
-        result:=saveregs;
+        case calloption of
+          pocall_internproc,
+          pocall_register,
+          pocall_safecall,
+          pocall_stdcall,
+          pocall_cdecl,
+          pocall_syscall,
+          pocall_cppdecl,
+          pocall_mwpascal,
+          pocall_far16,
+          pocall_pascal,
+          pocall_oldfpccall :
+            result:=saveregs;
+          else
+            internalerror(2018050401);
+        end;
       end;