]>
Commit | Line | Data |
---|---|---|
e1458aad AB |
1 | // |
2 | // Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR> | |
3 | // | |
4 | // This program and the accompanying materials are licensed and made available under | |
5 | // the terms and conditions of the BSD License that accompanies this distribution. | |
6 | // The full text of the license may be found at | |
7 | // http://opensource.org/licenses/bsd-license.php. | |
8 | // | |
9 | // THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
10 | // WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
11 | // | |
12 | ||
13 | // | |
14 | // GCC in LTO mode interoperates poorly with non-standard libraries that | |
15 | // provide implementations of compiler intrinsics such as memcpy/memset | |
16 | // or the stack protector entry points. | |
17 | // | |
18 | // By referencing these functions from a non-LTO object that can be passed | |
19 | // to the linker via the -plugin-opt=-pass-through=-lxxx options, the | |
20 | // intrinsics are included in the link in a way that allows them to be | |
21 | // pruned again if no other references to them exist. | |
22 | // | |
23 | ||
24 | .long memcpy - . | |
25 | .long memset - . | |
26 | .long __stack_chk_fail - . | |
27 | .long __stack_chk_guard - . |