Reviewed-by: Liming Gao <[email protected]>
> -----Original Message----- > From: edk2-devel [mailto:[email protected]] On Behalf Of > Ard Biesheuvel > Sent: Friday, August 12, 2016 2:21 AM > To: [email protected]; [email protected]; [email protected]; Gao, > Liming <[email protected]> > Cc: Ard Biesheuvel <[email protected]> > Subject: [edk2] [PATCH 3/3] MdePkg RVCT: add definition of UNREACHABLE > > 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 <[email protected]> > --- > MdePkg/Include/Arm/ProcessorBind.h | 7 +++++++ > 1 file changed, 7 insertions(+) > > 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 > -- > 2.7.4 > > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

