audk/ArmPkg/Library
Ard Biesheuvel e1458aaded ArmPkg: add prebuilt glue binaries for GCC5 LTO support
GCC in LTO mode interoperates poorly with non-standard libraries that
provide implementations of compiler intrinsics such as memcpy/memset
or the stack protector entry points. Such libraries need to be built
in non-LTO mode, and then referenced explicitly on the linker command
line using a -plugin-opt=-pass-through=-lxxx linker option.

However, if these intrinsics are also referenced directly, the LTO
version of the code will be pulled in, and will happily satisfy all
other references to the same symbol.

So add a pair of glue libraries, for ARM and AARCH64, that reference
the known intrinsics. Since the binaries live under ArmPkg directly,
we can reference them in tools_def.txt. Under LD garbage collection,
the object itself will be pruned, and so will the intrinsics that end
up unused by the module.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
2016-08-02 10:53:57 +02:00
..
ArmArchTimerLib ArmPkg/ArmArchTimerLib: correct typos 2016-04-01 17:19:24 +02:00
ArmCacheMaintenanceLib ArmPkg/ArmLib: don't invalidate entire I-cache on range operation 2016-05-12 13:53:08 +02:00
ArmDisassemblerLib ArmPkg/ArmDisassemblerLib: ARMThumb and AArch64 fixes 2014-09-09 15:57:18 +00:00
ArmDmaLib ArmPkg/ArmDmaLib: assert that consistent mappings are uncached 2016-05-10 14:44:40 +02:00
ArmExceptionLib ArmPkg|EmbeddedPkg: make PcdCpuVectorBaseAddress 64 bits wide 2016-03-25 07:17:53 +01:00
ArmGenericTimerPhyCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using physical timer 2014-09-09 16:06:10 +00:00
ArmGenericTimerVirtCounterLib ArmPkg: add ArmGenericTimerCounterLib implementation using virtual timer 2014-09-09 16:07:43 +00:00
ArmGicArchLib ArmPkg: cache detected revision in ArmGicArchLib 2015-07-28 20:45:10 +00:00
ArmGicArchSecLib ArmPkg: copy ArmGicArchLib to ArmGicArchSecLib 2015-07-28 20:44:58 +00:00
ArmHvcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmLib ArmPkg/Library: Add ArmReadSctlr for AArch64 2016-08-01 14:07:17 +02:00
ArmMmuLib ArmPkg/ArmMmuLib: add PEI specific version of ArmMmuLib 2016-07-07 14:36:45 +02:00
ArmPsciResetSystemLib Renamed ArmPlatformPkg/ArmVirtualizationPkg into ArmVirtPkg 2015-05-29 13:50:43 +00:00
ArmSmcLib ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSmcLibNull ArmPkg: update RVCT assembly functions to use new RVCT_ASM_EXPORT macro 2015-12-03 20:28:02 +00:00
ArmSoftFloatLib ArmPkg/ArmSoftfloatLib: add missing entry points for RVCT 2015-12-17 16:29:23 +00:00
BaseMemoryLibStm ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
BaseMemoryLibVstm ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
BdsLib ArmPkg/BdsLib: Send RemainingDevicePath to PXE Load File protocol 2015-12-07 16:51:35 +00:00
CompilerIntrinsicsLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
DebugAgentSymbolsBaseLib ArmPkg: use unified asm syntax for CLANG 2015-12-15 15:01:42 +00:00
DebugPeCoffExtraActionLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
DebugUncachedMemoryAllocationLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
DefaultExceptionHandlerLib ArmPkg/DefaultExceptionHandlerLib: put ASSERT (FALSE) last 2016-07-01 13:24:25 +02:00
GccLto ArmPkg: add prebuilt glue binaries for GCC5 LTO support 2016-08-02 10:53:57 +02:00
PeiServicesTablePointerLib ArmPkg/PeiServicesTablePointerLib: add missing MigratePeiServicesTablePointer() 2015-11-25 20:06:41 +00:00
PlatformBootManagerLib ArmPkg/PlatformBootManagerLib: implement new generic version 2016-05-12 13:56:50 +02:00
RvdPeCoffExtraActionLib ArmPkg/Semihostlib: Rename semi-hosting open option 2014-10-27 10:37:20 +00:00
SemiHostingDebugLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemiHostingSerialPortLib ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
SemihostLib ArmPkg: Rectify file modes 2016-01-30 12:25:59 +00:00
UncachedMemoryAllocationLib ArmPkg/UncachedMemoryAllocationLib: fix warning about uninitialized local var 2015-11-25 19:50:05 +00:00