Explorar o código

* clz is only available on thumb2/arm

git-svn-id: trunk@25416 -
florian %!s(int64=12) %!d(string=hai) anos
pai
achega
6f11e3f316
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      compiler/options.pas

+ 3 - 1
compiler/options.pas

@@ -3424,7 +3424,9 @@ if (target_info.abi = abi_eabihf) then
   { it is determined during system unit compilation if clz is used for bsf or not,
     this is not perfect but the current implementation bsf/bsr does not allow another
     solution }
-  if CPUARM_HAS_CLZ in cpu_capabilities[init_settings.cputype] then
+  if (CPUARM_HAS_CLZ in cpu_capabilities[init_settings.cputype]) and
+     ((init_settings.instructionset=is_arm) or
+      (CPUARM_HAS_THUMB2 in cpu_capabilities[init_settings.cputype])) then
     begin
       def_system_macro('FPC_HAS_INTERNAL_BSR');
       if CPUARM_HAS_RBIT in cpu_capabilities[init_settings.cputype] then