This patch cover tlsle tiny model tests, tls size truncation for tiny &
small model included also.

All testcases pass native test.

OK for trunk?

2015-08-26  Jiong Wang  <jiong.w...@arm.com>

gcc/testsuite/
  * gcc.target/aarch64/tlsle12_tiny_1.c: New testcase for tiny model.
  * gcc.target/aarch64/tlsle24_tiny_1.c: Likewise.
  * gcc.target/aarch64/tlsle_sizeadj_tiny_1.c: TLS size truncation test
  for tiny model.
  * gcc.target/aarch64/tlsle_sizeadj_small_1.c: TLS size truncation test
  for small model.
  
-- 
Regards,
Jiong

Index: gcc/testsuite/gcc.target/aarch64/tlsle12_tiny_1.c
===================================================================
--- gcc/testsuite/gcc.target/aarch64/tlsle12_tiny_1.c	(revision 0)
+++ gcc/testsuite/gcc.target/aarch64/tlsle12_tiny_1.c	(working copy)
@@ -0,0 +1,8 @@
+/* { dg-do run } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-options "-O2 -fpic -ftls-model=local-exec -mtls-size=12 -mcmodel=tiny --save-temps" } */
+
+#include "tls_1.x"
+
+/* { dg-final { scan-assembler-times "#:tprel_lo12" 2 } } */
+/* { dg-final { cleanup-saved-temps } } */
Index: gcc/testsuite/gcc.target/aarch64/tlsle24_tiny_1.c
===================================================================
--- gcc/testsuite/gcc.target/aarch64/tlsle24_tiny_1.c	(revision 0)
+++ gcc/testsuite/gcc.target/aarch64/tlsle24_tiny_1.c	(working copy)
@@ -0,0 +1,9 @@
+/* { dg-do run } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-options "-O2 -fpic -ftls-model=local-exec -mtls-size=24 -mcmodel=tiny --save-temps" } */
+
+#include "tls_1.x"
+
+/* { dg-final { scan-assembler-times "#:tprel_lo12_nc" 2 } } */
+/* { dg-final { scan-assembler-times "#:tprel_hi12" 2 } } */
+/* { dg-final { cleanup-saved-temps } } */
Index: gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_small_1.c
===================================================================
--- gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_small_1.c	(revision 0)
+++ gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_small_1.c	(working copy)
@@ -0,0 +1,10 @@
+/* { dg-do run } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-require-effective-target aarch64_tlsle32 } */
+/* { dg-options "-O2 -fpic -ftls-model=local-exec -mtls-size=48 --save-temps" } */
+
+#include "tls_1.x"
+
+/* { dg-final { scan-assembler-times "#:tprel_g1" 2 } } */
+/* { dg-final { scan-assembler-times "#:tprel_g0_nc" 2 } } */
+/* { dg-final { cleanup-saved-temps } } */
Index: gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_tiny_1.c
===================================================================
--- gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_tiny_1.c	(revision 0)
+++ gcc/testsuite/gcc.target/aarch64/tlsle_sizeadj_tiny_1.c	(working copy)
@@ -0,0 +1,9 @@
+/* { dg-do run } */
+/* { dg-require-effective-target tls_native } */
+/* { dg-options "-O2 -fpic -ftls-model=local-exec -mtls-size=32 -mcmodel=tiny --save-temps" } */
+
+#include "tls_1.x"
+
+/* { dg-final { scan-assembler-times "#:tprel_lo12_nc" 2 } } */
+/* { dg-final { scan-assembler-times "#:tprel_hi12" 2 } } */
+/* { dg-final { cleanup-saved-temps } } */

Reply via email to