]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
arm/v6intThumb: Disable tests for instructions modifying pc (ldr pc, add pc)
authorMark Wielaard <mark@klomp.org>
Sat, 29 Mar 2025 20:21:45 +0000 (21:21 +0100)
committerMark Wielaard <mark@klomp.org>
Sat, 29 Mar 2025 20:21:45 +0000 (21:21 +0100)
The test doesn't compile.

/usr/bin/ld: v6intThumb-v6intThumb.o(.text+0xf2): unresolvable
R_ARM_THM_CALL relocation against symbol `printf@@GLIBC_2.4'

Changing the movw and movt into a ldr as suggested in
https://bugs.kde.org/show_bug.cgi?id=339862#c1
Causes a different compile error.

/tmp/ccveFwf0.s:140: Error: offset out of range

So disable it for now.

none/tests/arm/v6intThumb.c
none/tests/arm/v6intThumb.stdout.exp

index e05b900855ac82ba6bb7827385f2f26e16fdbe51..7b769cedd7245a6a2ebd43adf271bcf534f2ebd6 100644 (file)
@@ -344,7 +344,7 @@ static int gen_cvin(int cvin)
 ////////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////
-
+/*
 __attribute__((noinline))
 void test_ldr_pc(void) {
     // special case of ldr PC, [rN, +imm?]
@@ -395,6 +395,7 @@ void test_ldr_pc(void) {
 
     }    
 }
+*/
 
 static int old_main(void)
 {
@@ -649,7 +650,7 @@ static int old_main(void)
 
     TESTCARRYEND
 
-    test_ldr_pc();
+    // test_ldr_pc();
 #if 0
        printf("ROR\n");
        TESTCARRY
index 9169f8865f34f7bd23e255dbf885ad7578242535..52404cf762149e1633f8787cb13094dee6445159 100644 (file)
@@ -17316,8 +17316,6 @@ ldrh r1, label_magic_ldrh :: rd 0x0000881b, cpsr 0xc0000000 NZ
 ldrsb r1, label_magic_ldrsb :: rd 0x0000001b, cpsr 0xc0000000 NZ  
 ldrsh r1, label_magic_ldrsh :: rd 0xffff881b, cpsr 0xc0000000 NZ  
 vldr d0, label_magic_vldr :: s0 0x8191881b s1 0x18fe9c93, cpsr 0xc0000000 NZ  
-tests for instructions modifying pc (ldr pc, add pc)
-ldr.w pc, [r9, +#432] :: r1 0x0000002a c:v-in 0, cpsr 0xc0000000 NZ  
 MUL
 mul  r0, r1, r2 :: rd 0x00000000 rm 0x00000000, rn 0x00000000, c:v-in 0, cpsr 0xc0000000 NZ  
 mul  r0, r1, r2 :: rd 0x00000000 rm 0xffffffff, rn 0x00000000, c:v-in 0, cpsr 0xc0000000 NZ