Revision: 19282
          http://sourceforge.net/p/edk2/code/19282
Author:   abiesheuvel
Date:     2015-12-15 15:02:07 +0000 (Tue, 15 Dec 2015)
Log Message:
-----------
ArmPkg/ArmV7Lib: add CLANG alternative for FPEXC access

The open coded access to co-processor #10 to set FPEXC is not supported
by the CLANG assembler, but the architecturally correct VMSR instruction
is not supported by older binutils. So keep the former unless __clang__
is defined.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <[email protected]>
Reviewed-by: Leif Lindholm <[email protected]>

Modified Paths:
--------------
    trunk/edk2/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S

Modified: trunk/edk2/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S
===================================================================
--- trunk/edk2/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S       2015-12-15 
15:01:58 UTC (rev 19281)
+++ trunk/edk2/ArmPkg/Library/ArmLib/ArmV7/ArmV7Support.S       2015-12-15 
15:02:07 UTC (rev 19282)
@@ -298,7 +298,11 @@
   isb
   # Set EN bit in FPEXC. The Advanced SIMD and VFP extensions are enabled and 
operate normally.
   mov     r0, #0x40000000
+#ifndef __clang__
   mcr     p10,#0x7,r0,c8,c0,#0
+#else
+  vmsr    fpexc, r0
+#endif
   bx      lr
 
 ASM_PFX(ArmCallWFI):


------------------------------------------------------------------------------
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to