mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-27 13:54:19 +08:00
rs6000: Retry tbegin. instructions that can fail intermittently
The HTM tbegin. instruction can fail intermittently due to many reasons. This can lead to htm-1.c FAILing from time to time. The solution is to allow retrying the instruction a few times before aborting. 2022-02-15 Peter Bergner <bergner@linux.ibm.com> gcc/testsuite/ * gcc.target/powerpc/htm-1.c: Retry intermittent failing tbegins.
This commit is contained in:
parent
e15425e899
commit
3d8d8e34f7
@ -12,14 +12,21 @@ main (void)
|
||||
{
|
||||
long i;
|
||||
unsigned long mask = 0;
|
||||
unsigned long retry_count = 0;
|
||||
|
||||
repeat:
|
||||
if (__builtin_tbegin (0))
|
||||
{
|
||||
mask++;
|
||||
retry_count = 0;
|
||||
}
|
||||
else
|
||||
abort();
|
||||
{
|
||||
/* Retry a limited number of times before aborting. */
|
||||
if (retry_count++ < 10)
|
||||
goto repeat;
|
||||
abort ();
|
||||
}
|
||||
|
||||
if (mask == 1)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user