mirror of
https://github.com/gcc-mirror/gcc.git
synced 2024-11-21 13:40:47 +00:00
aarch64: Fix nonlocal goto tests incompatible with GCS
gcc/testsuite/ChangeLog: * gcc.target/aarch64/gcs-nonlocal-3.c: New test. * gcc.target/aarch64/sme/nonlocal_goto_4.c: Update. * gcc.target/aarch64/sme/nonlocal_goto_5.c: Update. * gcc.target/aarch64/sme/nonlocal_goto_6.c: Update.
This commit is contained in:
parent
6cc6f75374
commit
4bce1f71c9
33
gcc/testsuite/gcc.target/aarch64/gcs-nonlocal-3.c
Normal file
33
gcc/testsuite/gcc.target/aarch64/gcs-nonlocal-3.c
Normal file
@ -0,0 +1,33 @@
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -mbranch-protection=gcs" } */
|
||||
/* { dg-final { check-function-bodies "**" "" "" { target "*-*-*" } {\.L[0-9]+\:} } } */
|
||||
|
||||
void run (void (*)());
|
||||
|
||||
/*
|
||||
** bar.0:
|
||||
** ...
|
||||
** hint 40 // chkfeat x16
|
||||
** tbnz w16, 0, (\.L[0-9]+)
|
||||
** ...
|
||||
** mrs (x[0-9]+), s3_3_c2_c5_1 // gcspr_el0
|
||||
** subs x[0-9]+, x[0-9]+, \2
|
||||
** bne (\.L[0-9]+)\n\1\:
|
||||
** ...
|
||||
** br x[0-9]+\n\3\:
|
||||
** ...
|
||||
** sysl xzr, #3, c7, c7, #1 // gcspopm
|
||||
** ...
|
||||
** b \1
|
||||
*/
|
||||
int
|
||||
foo (int *ptr)
|
||||
{
|
||||
__label__ failure;
|
||||
|
||||
void bar () { *ptr += 1; goto failure; }
|
||||
run (bar);
|
||||
return 1;
|
||||
|
||||
failure:
|
||||
return 0;
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -mbranch-protection=none" } */
|
||||
/* { dg-final { check-function-bodies "**" "" } } */
|
||||
|
||||
void run(void (*)());
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -mbranch-protection=none" } */
|
||||
/* { dg-final { check-function-bodies "**" "" } } */
|
||||
|
||||
void run(void (*)() __arm_streaming);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
|
||||
/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -mbranch-protection=none" } */
|
||||
/* { dg-final { check-function-bodies "**" "" } } */
|
||||
|
||||
void run(void (*)() __arm_streaming_compatible);
|
||||
|
Loading…
Reference in New Issue
Block a user