Просмотр исходного кода

*arm: TPECoffLinker is TInternalLinkerWin
+arm : InterlockedCompareExchangePointer

git-svn-id: trunk@3993 -

oro06 19 лет назад
Родитель
Сommit
3afad32966
2 измененных файлов с 8 добавлено и 1 удалено
  1. 1 1
      compiler/systems/t_win.pas
  2. 7 0
      rtl/arm/arm.inc

+ 1 - 1
compiler/systems/t_win.pas

@@ -1792,7 +1792,7 @@ initialization
 {$endif x86_64}
 {$ifdef arm}
   RegisterExternalLinker(system_arm_wince_info,TExternalLinkerWin);
-  RegisterInternalLinker(system_arm_wince_info,TPECoffLinker);
+  RegisterInternalLinker(system_arm_wince_info,TInternalLinkerWin);
   RegisterImport(system_arm_wince,TImportLibWin);
   RegisterExport(system_arm_wince,TExportLibWin);
   RegisterRes(res_gnu_wince_windres_info);

+ 7 - 0
rtl/arm/arm.inc

@@ -211,3 +211,10 @@ function InterLockedExchangeAdd (var Target: longint;Source : longint) : longint
     Result:=Target;
     inc(Target,Source);
   end;
+  
+function InterlockedCompareExchange(var Target: longint; NewValue: longint; Comperand: longint): longint;
+  begin
+   Result:=Target; //return initial value
+   if (Target=Comperand)
+   then Target:=NewValue;
+  end;