https://gcc.gnu.org/g:465815ffe36ba8f71649d7a541a864ebeb05ff6e

commit r16-7231-g465815ffe36ba8f71649d7a541a864ebeb05ff6e
Author: Alexandre Oliva <[email protected]>
Date:   Sun Feb 1 04:35:56 2026 -0300

    testsuite: riscv: pr110812_*.c needs medany on rv32
    
    When linking the pr110812 units with lto after compiling them with a
    riscv(32?) compiler that defaults to the medlow code model, the
    compiler uses HI20 relocations that overflow with our linker scripts.
    
    I suppose the test expects PC-relative relocations for symbol
    resolution, as in the medany code model, so select that explicitly.
    
    
    for  gcc/testsuite/ChangeLog
    
            * gcc.target/riscv/lto/pr110812_0.c: Set cmodel explicitly.
            * gcc.target/riscv/lto/pr110812_1.c: Likewise.

Diff:
---
 gcc/testsuite/gcc.target/riscv/lto/pr110812_0.c | 2 +-
 gcc/testsuite/gcc.target/riscv/lto/pr110812_1.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/gcc.target/riscv/lto/pr110812_0.c 
b/gcc/testsuite/gcc.target/riscv/lto/pr110812_0.c
index a2f70928b162..ab745e5ffec3 100644
--- a/gcc/testsuite/gcc.target/riscv/lto/pr110812_0.c
+++ b/gcc/testsuite/gcc.target/riscv/lto/pr110812_0.c
@@ -1,5 +1,5 @@
 /* { dg-lto-do link } */
-/* { dg-lto-options { { -flto -march=rv64gc -mabi=lp64d } } } */
+/* { dg-lto-options { { -flto -march=rv64gc -mabi=lp64d -mcmodel=medany } } } 
*/
 /* { dg-extra-ld-options "-nostdlib" } */
 
 void foo();
diff --git a/gcc/testsuite/gcc.target/riscv/lto/pr110812_1.c 
b/gcc/testsuite/gcc.target/riscv/lto/pr110812_1.c
index 34d7cbbbcbbb..a84f92c6627d 100644
--- a/gcc/testsuite/gcc.target/riscv/lto/pr110812_1.c
+++ b/gcc/testsuite/gcc.target/riscv/lto/pr110812_1.c
@@ -1,4 +1,4 @@
-/* { dg-options { -flto -march=rv64gcv -mabi=lp64d } } */
+/* { dg-options { -flto -march=rv64gcv -mabi=lp64d -mcmodel=medany } } */
 
 #include "riscv_vector.h"
 uint8_t *x, *y;

Reply via email to