The problem here is after r16-101, the 2 functions containing alloca/VLA
start to be cloned and then we un-VLA happens in using_vararray so this
is no longer testing what it should be testing.
The obvious fix is to mark using_vararray and using_alloca as noclone too.
Pushed as obvious after a quick test to make sure it is now working.
gcc/testsuite/ChangeLog:
PR testsuite/121684
* c-c++-common/hwasan/unprotected-allocas-0.c: Mark
using_vararray and using_alloca as noclone too.
Signed-off-by: Andrew Pinski <andrew.pinski@oss.qualcomm.com>
char tag_of (void * x) { return ((unsigned long long)x) >> 56; }
-int __attribute__ ((noinline))
+int __attribute__ ((noinline,noclone))
using_alloca (int num)
{
int retval = 0;
return retval;
}
-int __attribute__ ((noinline))
+int __attribute__ ((noinline,noclone))
using_vararray (int num)
{
int retval = 0;