* [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345]
@ 2022-07-25 6:26 Kewen.Lin
2022-08-15 8:03 ` PING^1 " Kewen.Lin
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Kewen.Lin @ 2022-07-25 6:26 UTC (permalink / raw)
To: GCC Patches; +Cc: Segher Boessenkool, David Edelsohn, Peter Bergner
Hi,
As the failure of test case gcc.target/powerpc/pr92398.p9-.c in
PR106345 shows, some test sources for some powerpc effective
targets use empty translation unit wrongly. The test sources
could go with options like "-ansi -pedantic-errors", then those
effective target checkings will fail unexpectedly with the
error messages like:
error: ISO C forbids an empty translation unit [-Wpedantic]
This patch is to fix empty TUs with one dummy function definition
accordingly.
Excepting for the failures on gcc.target/powerpc/pr92398.p9-.c
fixed, I can see it helps to bring back some testing coverage like:
NA->PASS: gcc.target/powerpc/pr92398.p9+.c
NA->PASS: gcc.target/powerpc/pr93453-1.c
Tested as before.
v1: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598602.html
v2: Use dummy function instead of dummy int as Segher suggested.
Segher, does this v2 look good to you?
BR,
Kewen
-----
PR testsuite/106345
gcc/testsuite/ChangeLog:
* lib/target-supports.exp (check_effective_target_powerpc_sqrt): Add
a function definition to avoid pedwarn about empty translation unit.
(check_effective_target_has_arch_pwr5): Likewise.
(check_effective_target_has_arch_pwr6): Likewise.
(check_effective_target_has_arch_pwr7): Likewise.
(check_effective_target_has_arch_pwr8): Likewise.
(check_effective_target_has_arch_pwr9): Likewise.
(check_effective_target_has_arch_pwr10): Likewise.
(check_effective_target_has_arch_ppc64): Likewise.
(check_effective_target_ppc_float128): Likewise.
(check_effective_target_ppc_float128_insns): Likewise.
(check_effective_target_powerpc_vsx): Likewise.
---
gcc/testsuite/lib/target-supports.exp | 33 +++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 4ed7b25b9a4..06484330178 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -6259,9 +6259,12 @@ proc check_effective_target_powerpc_sqrt { } {
}
return [check_no_compiler_messages powerpc_sqrt object {
+ void test (void)
+ {
#ifndef _ARCH_PPCSQ
#error _ARCH_PPCSQ is not defined
#endif
+ }
} {}]
}
@@ -6369,71 +6372,92 @@ proc check_effective_target_powerpc_p9modulo_ok { } {
# as provided by the test.
proc check_effective_target_has_arch_pwr5 { } {
return [check_no_compiler_messages_nocache arch_pwr5 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR5
#error does not have power5 support.
#else
/* "has power5 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_pwr6 { } {
return [check_no_compiler_messages_nocache arch_pwr6 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR6
#error does not have power6 support.
#else
/* "has power6 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_pwr7 { } {
return [check_no_compiler_messages_nocache arch_pwr7 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR7
#error does not have power7 support.
#else
/* "has power7 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_pwr8 { } {
return [check_no_compiler_messages_nocache arch_pwr8 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR8
#error does not have power8 support.
#else
/* "has power8 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_pwr9 { } {
return [check_no_compiler_messages_nocache arch_pwr9 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR9
#error does not have power9 support.
#else
/* "has power9 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_pwr10 { } {
return [check_no_compiler_messages_nocache arch_pwr10 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PWR10
#error does not have power10 support.
#else
/* "has power10 support" */
#endif
+ }
} [current_compiler_flags]]
}
proc check_effective_target_has_arch_ppc64 { } {
return [check_no_compiler_messages_nocache arch_ppc64 assembly {
+ void test (void)
+ {
#ifndef _ARCH_PPC64
#error does not have ppc64 support.
#else
/* "has ppc64 support" */
#endif
+ }
} [current_compiler_flags]]
}
@@ -6520,9 +6544,12 @@ proc check_effective_target_powerpc_float128_hw_ok { } {
proc check_effective_target_ppc_float128 { } {
return [check_no_compiler_messages_nocache ppc_float128 object {
+ void test (void)
+ {
#ifndef __FLOAT128__
nope no good
#endif
+ }
}]
}
@@ -6530,9 +6557,12 @@ proc check_effective_target_ppc_float128 { } {
proc check_effective_target_ppc_float128_insns { } {
return [check_no_compiler_messages_nocache ppc_float128 object {
+ void test (void)
+ {
#ifndef __FLOAT128_HARDWARE__
nope no good
#endif
+ }
}]
}
@@ -6540,9 +6570,12 @@ proc check_effective_target_ppc_float128_insns { } {
proc check_effective_target_powerpc_vsx { } {
return [check_no_compiler_messages_nocache powerpc_vsx object {
+ void test (void)
+ {
#ifndef __VSX__
nope no vsx
#endif
+ }
}]
}
--
2.32.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* PING^1 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345]
2022-07-25 6:26 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345] Kewen.Lin
@ 2022-08-15 8:03 ` Kewen.Lin
2022-08-29 6:20 ` PING^2 " Kewen.Lin
2022-09-05 8:53 ` Kewen.Lin
2022-09-05 14:42 ` Segher Boessenkool
2 siblings, 1 reply; 5+ messages in thread
From: Kewen.Lin @ 2022-08-15 8:03 UTC (permalink / raw)
To: GCC Patches; +Cc: Peter Bergner, David Edelsohn, Segher Boessenkool
Hi,
Gentle ping this: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598748.html
BR,
Kewen
on 2022/7/25 14:26, Kewen.Lin via Gcc-patches wrote:
> Hi,
>
> As the failure of test case gcc.target/powerpc/pr92398.p9-.c in
> PR106345 shows, some test sources for some powerpc effective
> targets use empty translation unit wrongly. The test sources
> could go with options like "-ansi -pedantic-errors", then those
> effective target checkings will fail unexpectedly with the
> error messages like:
>
> error: ISO C forbids an empty translation unit [-Wpedantic]
>
> This patch is to fix empty TUs with one dummy function definition
> accordingly.
>
> Excepting for the failures on gcc.target/powerpc/pr92398.p9-.c
> fixed, I can see it helps to bring back some testing coverage like:
>
> NA->PASS: gcc.target/powerpc/pr92398.p9+.c
> NA->PASS: gcc.target/powerpc/pr93453-1.c
>
> Tested as before.
>
> v1: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598602.html
> v2: Use dummy function instead of dummy int as Segher suggested.
>
> Segher, does this v2 look good to you?
>
> BR,
> Kewen
> -----
> PR testsuite/106345
>
> gcc/testsuite/ChangeLog:
>
> * lib/target-supports.exp (check_effective_target_powerpc_sqrt): Add
> a function definition to avoid pedwarn about empty translation unit.
> (check_effective_target_has_arch_pwr5): Likewise.
> (check_effective_target_has_arch_pwr6): Likewise.
> (check_effective_target_has_arch_pwr7): Likewise.
> (check_effective_target_has_arch_pwr8): Likewise.
> (check_effective_target_has_arch_pwr9): Likewise.
> (check_effective_target_has_arch_pwr10): Likewise.
> (check_effective_target_has_arch_ppc64): Likewise.
> (check_effective_target_ppc_float128): Likewise.
> (check_effective_target_ppc_float128_insns): Likewise.
> (check_effective_target_powerpc_vsx): Likewise.
> ---
> gcc/testsuite/lib/target-supports.exp | 33 +++++++++++++++++++++++++++
> 1 file changed, 33 insertions(+)
>
> diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
> index 4ed7b25b9a4..06484330178 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -6259,9 +6259,12 @@ proc check_effective_target_powerpc_sqrt { } {
> }
>
> return [check_no_compiler_messages powerpc_sqrt object {
> + void test (void)
> + {
> #ifndef _ARCH_PPCSQ
> #error _ARCH_PPCSQ is not defined
> #endif
> + }
> } {}]
> }
>
> @@ -6369,71 +6372,92 @@ proc check_effective_target_powerpc_p9modulo_ok { } {
> # as provided by the test.
> proc check_effective_target_has_arch_pwr5 { } {
> return [check_no_compiler_messages_nocache arch_pwr5 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR5
> #error does not have power5 support.
> #else
> /* "has power5 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr6 { } {
> return [check_no_compiler_messages_nocache arch_pwr6 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR6
> #error does not have power6 support.
> #else
> /* "has power6 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr7 { } {
> return [check_no_compiler_messages_nocache arch_pwr7 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR7
> #error does not have power7 support.
> #else
> /* "has power7 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr8 { } {
> return [check_no_compiler_messages_nocache arch_pwr8 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR8
> #error does not have power8 support.
> #else
> /* "has power8 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr9 { } {
> return [check_no_compiler_messages_nocache arch_pwr9 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR9
> #error does not have power9 support.
> #else
> /* "has power9 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr10 { } {
> return [check_no_compiler_messages_nocache arch_pwr10 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR10
> #error does not have power10 support.
> #else
> /* "has power10 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_ppc64 { } {
> return [check_no_compiler_messages_nocache arch_ppc64 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PPC64
> #error does not have ppc64 support.
> #else
> /* "has ppc64 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> @@ -6520,9 +6544,12 @@ proc check_effective_target_powerpc_float128_hw_ok { } {
>
> proc check_effective_target_ppc_float128 { } {
> return [check_no_compiler_messages_nocache ppc_float128 object {
> + void test (void)
> + {
> #ifndef __FLOAT128__
> nope no good
> #endif
> + }
> }]
> }
>
> @@ -6530,9 +6557,12 @@ proc check_effective_target_ppc_float128 { } {
>
> proc check_effective_target_ppc_float128_insns { } {
> return [check_no_compiler_messages_nocache ppc_float128 object {
> + void test (void)
> + {
> #ifndef __FLOAT128_HARDWARE__
> nope no good
> #endif
> + }
> }]
> }
>
> @@ -6540,9 +6570,12 @@ proc check_effective_target_ppc_float128_insns { } {
>
> proc check_effective_target_powerpc_vsx { } {
> return [check_no_compiler_messages_nocache powerpc_vsx object {
> + void test (void)
> + {
> #ifndef __VSX__
> nope no vsx
> #endif
> + }
> }]
> }
>
> --
> 2.32.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* PING^2 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345]
2022-08-15 8:03 ` PING^1 " Kewen.Lin
@ 2022-08-29 6:20 ` Kewen.Lin
0 siblings, 0 replies; 5+ messages in thread
From: Kewen.Lin @ 2022-08-29 6:20 UTC (permalink / raw)
To: GCC Patches; +Cc: Peter Bergner, Segher Boessenkool, David Edelsohn
Hi,
Gentle ping this: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598748.html
BR,
Kewen
> on 2022/7/25 14:26, Kewen.Lin via Gcc-patches wrote:
>> Hi,
>>
>> As the failure of test case gcc.target/powerpc/pr92398.p9-.c in
>> PR106345 shows, some test sources for some powerpc effective
>> targets use empty translation unit wrongly. The test sources
>> could go with options like "-ansi -pedantic-errors", then those
>> effective target checkings will fail unexpectedly with the
>> error messages like:
>>
>> error: ISO C forbids an empty translation unit [-Wpedantic]
>>
>> This patch is to fix empty TUs with one dummy function definition
>> accordingly.
>>
>> Excepting for the failures on gcc.target/powerpc/pr92398.p9-.c
>> fixed, I can see it helps to bring back some testing coverage like:
>>
>> NA->PASS: gcc.target/powerpc/pr92398.p9+.c
>> NA->PASS: gcc.target/powerpc/pr93453-1.c
>>
>> Tested as before.
>>
>> v1: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598602.html
>> v2: Use dummy function instead of dummy int as Segher suggested.
>>
>> Segher, does this v2 look good to you?
>>
>> BR,
>> Kewen
>> -----
>> PR testsuite/106345
>>
>> gcc/testsuite/ChangeLog:
>>
>> * lib/target-supports.exp (check_effective_target_powerpc_sqrt): Add
>> a function definition to avoid pedwarn about empty translation unit.
>> (check_effective_target_has_arch_pwr5): Likewise.
>> (check_effective_target_has_arch_pwr6): Likewise.
>> (check_effective_target_has_arch_pwr7): Likewise.
>> (check_effective_target_has_arch_pwr8): Likewise.
>> (check_effective_target_has_arch_pwr9): Likewise.
>> (check_effective_target_has_arch_pwr10): Likewise.
>> (check_effective_target_has_arch_ppc64): Likewise.
>> (check_effective_target_ppc_float128): Likewise.
>> (check_effective_target_ppc_float128_insns): Likewise.
>> (check_effective_target_powerpc_vsx): Likewise.
>> ---
>> gcc/testsuite/lib/target-supports.exp | 33 +++++++++++++++++++++++++++
>> 1 file changed, 33 insertions(+)
>>
>> diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
>> index 4ed7b25b9a4..06484330178 100644
>> --- a/gcc/testsuite/lib/target-supports.exp
>> +++ b/gcc/testsuite/lib/target-supports.exp
>> @@ -6259,9 +6259,12 @@ proc check_effective_target_powerpc_sqrt { } {
>> }
>>
>> return [check_no_compiler_messages powerpc_sqrt object {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PPCSQ
>> #error _ARCH_PPCSQ is not defined
>> #endif
>> + }
>> } {}]
>> }
>>
>> @@ -6369,71 +6372,92 @@ proc check_effective_target_powerpc_p9modulo_ok { } {
>> # as provided by the test.
>> proc check_effective_target_has_arch_pwr5 { } {
>> return [check_no_compiler_messages_nocache arch_pwr5 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR5
>> #error does not have power5 support.
>> #else
>> /* "has power5 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_pwr6 { } {
>> return [check_no_compiler_messages_nocache arch_pwr6 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR6
>> #error does not have power6 support.
>> #else
>> /* "has power6 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_pwr7 { } {
>> return [check_no_compiler_messages_nocache arch_pwr7 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR7
>> #error does not have power7 support.
>> #else
>> /* "has power7 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_pwr8 { } {
>> return [check_no_compiler_messages_nocache arch_pwr8 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR8
>> #error does not have power8 support.
>> #else
>> /* "has power8 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_pwr9 { } {
>> return [check_no_compiler_messages_nocache arch_pwr9 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR9
>> #error does not have power9 support.
>> #else
>> /* "has power9 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_pwr10 { } {
>> return [check_no_compiler_messages_nocache arch_pwr10 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PWR10
>> #error does not have power10 support.
>> #else
>> /* "has power10 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> proc check_effective_target_has_arch_ppc64 { } {
>> return [check_no_compiler_messages_nocache arch_ppc64 assembly {
>> + void test (void)
>> + {
>> #ifndef _ARCH_PPC64
>> #error does not have ppc64 support.
>> #else
>> /* "has ppc64 support" */
>> #endif
>> + }
>> } [current_compiler_flags]]
>> }
>>
>> @@ -6520,9 +6544,12 @@ proc check_effective_target_powerpc_float128_hw_ok { } {
>>
>> proc check_effective_target_ppc_float128 { } {
>> return [check_no_compiler_messages_nocache ppc_float128 object {
>> + void test (void)
>> + {
>> #ifndef __FLOAT128__
>> nope no good
>> #endif
>> + }
>> }]
>> }
>>
>> @@ -6530,9 +6557,12 @@ proc check_effective_target_ppc_float128 { } {
>>
>> proc check_effective_target_ppc_float128_insns { } {
>> return [check_no_compiler_messages_nocache ppc_float128 object {
>> + void test (void)
>> + {
>> #ifndef __FLOAT128_HARDWARE__
>> nope no good
>> #endif
>> + }
>> }]
>> }
>>
>> @@ -6540,9 +6570,12 @@ proc check_effective_target_ppc_float128_insns { } {
>>
>> proc check_effective_target_powerpc_vsx { } {
>> return [check_no_compiler_messages_nocache powerpc_vsx object {
>> + void test (void)
>> + {
>> #ifndef __VSX__
>> nope no vsx
>> #endif
>> + }
>> }]
>> }
>>
>> --
>> 2.32.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345]
2022-07-25 6:26 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345] Kewen.Lin
2022-08-15 8:03 ` PING^1 " Kewen.Lin
@ 2022-09-05 8:53 ` Kewen.Lin
2022-09-05 14:42 ` Segher Boessenkool
2 siblings, 0 replies; 5+ messages in thread
From: Kewen.Lin @ 2022-09-05 8:53 UTC (permalink / raw)
To: Segher Boessenkool; +Cc: Peter Bergner, David Edelsohn, GCC Patches
Hi Segher,
Gentle ping this patch as you wanted empty TU issue to be fixed
first at the discussion [1]. Thanks in advance for your time!
[1] https://gcc.gnu.org/pipermail/gcc-patches/2022-September/600927.html
BR,
Kewen
on 2022/7/25 14:26, Kewen.Lin via Gcc-patches wrote:
> Hi,
>
> As the failure of test case gcc.target/powerpc/pr92398.p9-.c in
> PR106345 shows, some test sources for some powerpc effective
> targets use empty translation unit wrongly. The test sources
> could go with options like "-ansi -pedantic-errors", then those
> effective target checkings will fail unexpectedly with the
> error messages like:
>
> error: ISO C forbids an empty translation unit [-Wpedantic]
>
> This patch is to fix empty TUs with one dummy function definition
> accordingly.
>
> Excepting for the failures on gcc.target/powerpc/pr92398.p9-.c
> fixed, I can see it helps to bring back some testing coverage like:
>
> NA->PASS: gcc.target/powerpc/pr92398.p9+.c
> NA->PASS: gcc.target/powerpc/pr93453-1.c
>
> Tested as before.
>
> v1: https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598602.html
> v2: Use dummy function instead of dummy int as Segher suggested.
>
> Segher, does this v2 look good to you?
>
> BR,
> Kewen
> -----
> PR testsuite/106345
>
> gcc/testsuite/ChangeLog:
>
> * lib/target-supports.exp (check_effective_target_powerpc_sqrt): Add
> a function definition to avoid pedwarn about empty translation unit.
> (check_effective_target_has_arch_pwr5): Likewise.
> (check_effective_target_has_arch_pwr6): Likewise.
> (check_effective_target_has_arch_pwr7): Likewise.
> (check_effective_target_has_arch_pwr8): Likewise.
> (check_effective_target_has_arch_pwr9): Likewise.
> (check_effective_target_has_arch_pwr10): Likewise.
> (check_effective_target_has_arch_ppc64): Likewise.
> (check_effective_target_ppc_float128): Likewise.
> (check_effective_target_ppc_float128_insns): Likewise.
> (check_effective_target_powerpc_vsx): Likewise.
> ---
> gcc/testsuite/lib/target-supports.exp | 33 +++++++++++++++++++++++++++
> 1 file changed, 33 insertions(+)
>
> diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
> index 4ed7b25b9a4..06484330178 100644
> --- a/gcc/testsuite/lib/target-supports.exp
> +++ b/gcc/testsuite/lib/target-supports.exp
> @@ -6259,9 +6259,12 @@ proc check_effective_target_powerpc_sqrt { } {
> }
>
> return [check_no_compiler_messages powerpc_sqrt object {
> + void test (void)
> + {
> #ifndef _ARCH_PPCSQ
> #error _ARCH_PPCSQ is not defined
> #endif
> + }
> } {}]
> }
>
> @@ -6369,71 +6372,92 @@ proc check_effective_target_powerpc_p9modulo_ok { } {
> # as provided by the test.
> proc check_effective_target_has_arch_pwr5 { } {
> return [check_no_compiler_messages_nocache arch_pwr5 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR5
> #error does not have power5 support.
> #else
> /* "has power5 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr6 { } {
> return [check_no_compiler_messages_nocache arch_pwr6 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR6
> #error does not have power6 support.
> #else
> /* "has power6 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr7 { } {
> return [check_no_compiler_messages_nocache arch_pwr7 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR7
> #error does not have power7 support.
> #else
> /* "has power7 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr8 { } {
> return [check_no_compiler_messages_nocache arch_pwr8 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR8
> #error does not have power8 support.
> #else
> /* "has power8 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr9 { } {
> return [check_no_compiler_messages_nocache arch_pwr9 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR9
> #error does not have power9 support.
> #else
> /* "has power9 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_pwr10 { } {
> return [check_no_compiler_messages_nocache arch_pwr10 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PWR10
> #error does not have power10 support.
> #else
> /* "has power10 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> proc check_effective_target_has_arch_ppc64 { } {
> return [check_no_compiler_messages_nocache arch_ppc64 assembly {
> + void test (void)
> + {
> #ifndef _ARCH_PPC64
> #error does not have ppc64 support.
> #else
> /* "has ppc64 support" */
> #endif
> + }
> } [current_compiler_flags]]
> }
>
> @@ -6520,9 +6544,12 @@ proc check_effective_target_powerpc_float128_hw_ok { } {
>
> proc check_effective_target_ppc_float128 { } {
> return [check_no_compiler_messages_nocache ppc_float128 object {
> + void test (void)
> + {
> #ifndef __FLOAT128__
> nope no good
> #endif
> + }
> }]
> }
>
> @@ -6530,9 +6557,12 @@ proc check_effective_target_ppc_float128 { } {
>
> proc check_effective_target_ppc_float128_insns { } {
> return [check_no_compiler_messages_nocache ppc_float128 object {
> + void test (void)
> + {
> #ifndef __FLOAT128_HARDWARE__
> nope no good
> #endif
> + }
> }]
> }
>
> @@ -6540,9 +6570,12 @@ proc check_effective_target_ppc_float128_insns { } {
>
> proc check_effective_target_powerpc_vsx { } {
> return [check_no_compiler_messages_nocache powerpc_vsx object {
> + void test (void)
> + {
> #ifndef __VSX__
> nope no vsx
> #endif
> + }
> }]
> }
>
> --
> 2.32.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345]
2022-07-25 6:26 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345] Kewen.Lin
2022-08-15 8:03 ` PING^1 " Kewen.Lin
2022-09-05 8:53 ` Kewen.Lin
@ 2022-09-05 14:42 ` Segher Boessenkool
2 siblings, 0 replies; 5+ messages in thread
From: Segher Boessenkool @ 2022-09-05 14:42 UTC (permalink / raw)
To: Kewen.Lin; +Cc: GCC Patches, David Edelsohn, Peter Bergner
Hi!
On Mon, Jul 25, 2022 at 02:26:15PM +0800, Kewen.Lin wrote:
> As the failure of test case gcc.target/powerpc/pr92398.p9-.c in
> PR106345 shows, some test sources for some powerpc effective
> targets use empty translation unit wrongly.
> * lib/target-supports.exp (check_effective_target_powerpc_sqrt): Add
> a function definition to avoid pedwarn about empty translation unit.
> (check_effective_target_has_arch_pwr5): Likewise.
> (check_effective_target_has_arch_pwr6): Likewise.
> (check_effective_target_has_arch_pwr7): Likewise.
> (check_effective_target_has_arch_pwr8): Likewise.
> (check_effective_target_has_arch_pwr9): Likewise.
> (check_effective_target_has_arch_pwr10): Likewise.
> (check_effective_target_has_arch_ppc64): Likewise.
> (check_effective_target_ppc_float128): Likewise.
> (check_effective_target_ppc_float128_insns): Likewise.
> (check_effective_target_powerpc_vsx): Likewise.
Sorry, I thought you had committed this already. Oops.
Okay for trunk, and for all backports you want. Thanks!
Segher
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-09-05 14:43 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-25 6:26 [PATCH v2] rs6000/test: Fix empty TU in some cases of effective targets [PR106345] Kewen.Lin
2022-08-15 8:03 ` PING^1 " Kewen.Lin
2022-08-29 6:20 ` PING^2 " Kewen.Lin
2022-09-05 8:53 ` Kewen.Lin
2022-09-05 14:42 ` Segher Boessenkool
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).