From: Michael Meissner Date: Tue, 9 Jun 2020 18:48:24 +0000 (-0400) Subject: PowerPC: PowerPC tests: Add prefixed/pcrel tests. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6e52b2297ecce1243c00d76b3f079b71016b8ffa;p=gcc.git PowerPC: PowerPC tests: Add prefixed/pcrel tests. testsuite/ 2020-06-09 Michael Meissner * lib/target-supports.exp (check_effective_target_powerpc_pcrel): New. (check_effective_target_powerpc_prefixed_addr): New. --- diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index b335108358d..a595042b36e 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -2163,6 +2163,25 @@ proc check_p9vector_hw_available { } { }] } +# Return 1 if the PowerPC target generates PC-relative instructions +# automatically for targets that support PC-relative instructions. +proc check_effective_target_powerpc_pcrel { } { + return [check_no_messages_and_pattern powerpc_pcrel \ + {\mpla\M} assembly { + static unsigned short s; + unsigned short *p_foo (void) { return &s; } + } {-O2 -mcpu=future}] +} + +# Return 1 if the PowerPC target generates prefixed instructions automatically +# for targets that support prefixed instructions. +proc check_effective_target_powerpc_prefixed_addr { } { + return [check_no_messages_and_pattern powerpc_prefixed_addr \ + {\mplwz\M} assembly { + unsigned int foo (unsigned int *p) { return p[0x12345]; } + } {-O2 -mcpu=future}] +} + # Return 1 if the target supports executing power9 modulo instructions, 0 # otherwise. Cache the result.