Testsuite: Prevent linking top-level assembly tests as PIE.
Top-level assembly tests are now linked without PIE to avoid runtime text relocations.
Top-level assembly tests in the GCC testsuite are now explicitly linked without Position Independent Executable (PIE) enabled. Linking these tests as PIE can result in the linker creating runtime text relocations, leading to warnings or errors. The -no-pie option is added to the testsuite directives to prevent this issue and ensure the tests execute correctly. This addresses PR testsuite/70150.
In Details
The dg-options and dg-lto-options directives in the affected test cases are updated to include -no-pie. This prevents the linker from creating runtime text relocations when linking these assembly tests as PIE. The issue arises because the assembly code may not be suitable for PIE execution, leading to linker warnings or errors.
For Context
Position Independent Executables (PIE) are a security feature that allows the operating system to load a program at a random address in memory, making it harder for attackers to exploit vulnerabilities. However, PIE requires code to be written in a specific way. This commit disables PIE for certain assembly tests in the GCC testsuite to avoid issues with runtime text relocations, which occur when the code is not compatible with PIE.