Browse Source

* RiscV: unify memory barrier functions

florian 6 months ago
parent
commit
c6a68abfb6
2 changed files with 25 additions and 25 deletions
  1. 25 0
      rtl/riscv/riscv.inc
  2. 0 25
      rtl/riscv64/riscv64.inc

+ 25 - 0
rtl/riscv/riscv.inc

@@ -157,3 +157,28 @@ begin
   SetNativeFPUControlWord(cw);
   SetNativeFPUControlWord(cw);
 {$endif FPUFD}
 {$endif FPUFD}
 end;
 end;
+
+
+{$define FPC_SYSTEM_HAS_MEM_BARRIER}
+
+procedure ReadBarrier; assembler; nostackframe;
+  asm
+    fence ir, ir
+  end;
+
+
+procedure ReadDependencyBarrier;
+  begin
+  end;
+
+
+procedure ReadWriteBarrier; assembler; nostackframe;
+  asm
+    fence iorw, iorw
+  end;
+
+
+procedure WriteBarrier; assembler; nostackframe;
+  asm
+    fence ow, ow
+  end;

+ 0 - 25
rtl/riscv64/riscv64.inc

@@ -278,28 +278,3 @@ procedure inclocked(var l:int64);
   begin
   begin
     InterLockedIncrement64(l);
     InterLockedIncrement64(l);
   end;
   end;
-
-
-{$define FPC_SYSTEM_HAS_MEM_BARRIER}
-
-procedure ReadBarrier; assembler; nostackframe;
-  asm
-    fence ir, ir
-  end;
-
-
-procedure ReadDependencyBarrier;
-  begin
-  end;
-
-
-procedure ReadWriteBarrier; assembler; nostackframe;
-  asm
-    fence iorw, iorw
-  end;
-
-
-procedure WriteBarrier; assembler; nostackframe;
-  asm
-    fence ow, ow
-  end;