Skip to content

Commit f36dbfe

Browse files
justdoitqdmpe
authored andcommitted
selftests/powerpc: Fix build errors in powerpc ptrace selftests
GCC 7 will take "r2" in clobber list as an error and it will get following build errors for powerpc ptrace selftests even with -fno-pic option: ptrace-tm-vsx.c: In function ‘tm_vsx’: ptrace-tm-vsx.c:42:2: error: PIC register clobbered by ‘r2’ in ‘asm’ asm __volatile__( ^~~ make[1]: *** [ptrace-tm-vsx] Error 1 ptrace-tm-spd-vsx.c: In function ‘tm_spd_vsx’: ptrace-tm-spd-vsx.c:55:2: error: PIC register clobbered by ‘r2’ in ‘asm’ asm __volatile__( ^~~ make[1]: *** [ptrace-tm-spd-vsx] Error 1 ptrace-tm-spr.c: In function ‘tm_spr’: ptrace-tm-spr.c:46:2: error: PIC register clobbered by ‘r2’ in ‘asm’ asm __volatile__( ^~~ Fix the build error by removing "r2" from the clobber list. None of these asm blocks actually clobber r2. Reported-by: Seth Forshee <[email protected]> Signed-off-by: Simon Guo <[email protected]> Tested-by: Seth Forshee <[email protected]> Signed-off-by: Michael Ellerman <[email protected]>
1 parent 608c0d8 commit f36dbfe

File tree

3 files changed

+4
-5
lines changed

3 files changed

+4
-5
lines changed

tools/testing/selftests/powerpc/ptrace/ptrace-tm-spd-vsx.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ void tm_spd_vsx(void)
7979
: [res] "=r" (result), [texasr] "=r" (texasr)
8080
: [fp_load] "r" (fp_load), [fp_load_ckpt] "r" (fp_load_ckpt),
8181
[sprn_texasr] "i" (SPRN_TEXASR)
82-
: "memory", "r0", "r1", "r2", "r3", "r4",
83-
"r8", "r9", "r10", "r11"
82+
: "memory", "r0", "r1", "r3", "r4",
83+
"r7", "r8", "r9", "r10", "r11"
8484
);
8585

8686
if (result) {

tools/testing/selftests/powerpc/ptrace/ptrace-tm-spr.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,7 @@ void tm_spr(void)
7676
: [tfhar] "=r" (tfhar), [res] "=r" (result),
7777
[texasr] "=r" (texasr), [cptr1] "=r" (cptr1)
7878
: [sprn_texasr] "i" (SPRN_TEXASR)
79-
: "memory", "r0", "r1", "r2", "r3", "r4",
80-
"r8", "r9", "r10", "r11", "r31"
79+
: "memory", "r0", "r8", "r31"
8180
);
8281

8382
/* There are 2 32bit instructions before tbegin. */

tools/testing/selftests/powerpc/ptrace/ptrace-tm-vsx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ void tm_vsx(void)
6767
: [res] "=r" (result), [texasr] "=r" (texasr)
6868
: [fp_load] "r" (fp_load), [fp_load_ckpt] "r" (fp_load_ckpt),
6969
[sprn_texasr] "i" (SPRN_TEXASR), [cptr1] "r" (&cptr[1])
70-
: "memory", "r0", "r1", "r2", "r3", "r4",
70+
: "memory", "r0", "r1", "r3", "r4",
7171
"r7", "r8", "r9", "r10", "r11"
7272
);
7373

0 commit comments

Comments
 (0)