[PATCH] PR testsuite/70520: Backport r265322 from llvm upstream

H.J. Lu hongjiu.lu@intel.com
Mon May 2 21:12:00 GMT 2016


Since x86 psABIs require the function incoming stack must align at 16
bytes, child process stack passed to clone should be aligned at 16
bytes.

Tested on Linux/x86-64.  OK for trunk?


H.J.
	PR testsuite/70520
	* c-c++-common/asan/clone-test-1.c (main): Align child process
	stack to 16 bytes.
---
 gcc/testsuite/c-c++-common/asan/clone-test-1.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/testsuite/c-c++-common/asan/clone-test-1.c b/gcc/testsuite/c-c++-common/asan/clone-test-1.c
index fd187aa..eeca09f 100644
--- a/gcc/testsuite/c-c++-common/asan/clone-test-1.c
+++ b/gcc/testsuite/c-c++-common/asan/clone-test-1.c
@@ -25,7 +25,7 @@ volatile int zero = 0;
 int main(int argc, char **argv) {
   int i;
   const int kStackSize = 1 << 20;
-  char child_stack[kStackSize + 1];
+  char __attribute__((aligned(16))) child_stack[kStackSize + 1];
   char *sp = child_stack + kStackSize;  /* Stack grows down. */
   printf("Parent: %p\n", sp);
   pid_t clone_pid = clone(Child, sp, CLONE_FILES | CLONE_VM, NULL, 0, 0, 0);
-- 
2.5.5



More information about the Gcc-patches mailing list