Message ID | 1470939632-32198-3-git-send-email-ard.biesheuvel@linaro.org |
---|---|
State | Accepted |
Commit | 82df618711c596d3b6164e790572c795b7ea4dcc |
Headers | show |
diff --git a/MdePkg/Include/Arm/ProcessorBind.h b/MdePkg/Include/Arm/ProcessorBind.h index c2482c2f50f0..5ee7465c05a3 100644 --- a/MdePkg/Include/Arm/ProcessorBind.h +++ b/MdePkg/Include/Arm/ProcessorBind.h @@ -28,6 +28,13 @@ #pragma pack() #endif +// +// RVCT does not support the __builtin_unreachable() macro +// +#ifdef __ARMCC_VERSION +#define UNREACHABLE() +#endif + #if _MSC_EXTENSIONS // // use Microsoft* C complier dependent integer width types
The RVCT compiler in --gnu mode appears to simply strip of the __builtin prefix when it encounters calls to __builtin_xxx() functions, and so the __builtin_unreachable() we emit for GCC results in linker errors regarding undefined references against 'unreachable()'. So define UNREACHABLE() to a NOP instead. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> --- MdePkg/Include/Arm/ProcessorBind.h | 7 +++++++ 1 file changed, 7 insertions(+) -- 2.7.4 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel