소스 검색

* workaround unsupported -march=...+pauth for some assembler/clang versions

florian 1 년 전
부모
커밋
9409ec6341
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      compiler/aarch64/agcpugas.pas

+ 5 - 1
compiler/aarch64/agcpugas.pas

@@ -122,7 +122,11 @@ unit agcpugas;
               CPUAARCH64_HAS_MEMTAG:
               CPUAARCH64_HAS_MEMTAG:
                 Result:=Result+'+memtag';
                 Result:=Result+'+memtag';
               CPUAARCH64_HAS_PAUTH:
               CPUAARCH64_HAS_PAUTH:
-                Result:=Result+'+pauth';
+                { currently, clang on aarch64-darwin does not support pauth and as
+                  it is actually part of -march==armv8.4-a (and higher) we actually don't need it,
+                  so ignore it at this point }
+                if not(current_settings.cputype>=cpu_armv84a) then
+                  Result:=Result+'+pauth';
               CPUAARCH64_HAS_TME:
               CPUAARCH64_HAS_TME:
                 Result:=Result+'+tme';
                 Result:=Result+'+tme';
               CPUAARCH64_HAS_PROFILE:
               CPUAARCH64_HAS_PROFILE: