Adjust gdb.multi tests for aarch64
authorYao Qi <yao.qi@linaro.org>
Tue, 7 Jul 2015 15:58:19 +0000 (16:58 +0100)
committerYao Qi <yao.qi@linaro.org>
Tue, 7 Jul 2015 15:58:19 +0000 (16:58 +0100)
Multi-arch related tests under gdb.multi are to compile programs with
the same compiler but different compiler options (-m64 vs -m32).  However,
different compilers are needed to compile both aarch64 program and
arm (aarch32) program.  This patch is to adjust these test cases to
compile programs in different modes with different compiler.

When we use gcc for arm-linux target, its file name can be different,
arm-linux-gnueabihf-gcc, arm-linux-gnueabi-gcc, or arm-none-linux-gnueabi-gcc,
so I add a variable ARM_CC_FOR_TARGET, so that user can set the name
of gcc for arm-linux target on aarch64, like:

 $ make check RUNTESTFLAGS='ARM_CC_FOR_TARGET=arm-linux-gnueabihf-gcc multi-arch.exp'

gdb/testsuite:

2015-07-07  Yao Qi  <yao.qi@linaro.org>

* gdb.multi/multi-arch-exec.exp: Set march1 and march2 to "" if target
is aarch64.  If target is aarch64, set compiler=${ARM_CC_FOR_TARGET}
if it exists.
* gdb.multi/multi-arch.exp: Likewise.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.multi/multi-arch-exec.exp
gdb/testsuite/gdb.multi/multi-arch.exp

index 5222118eec17a2b13afff4e1325716d895574d08..a65809052eb6686b7a061fb1039fef55deb3e537 100644 (file)
@@ -1,3 +1,10 @@
+2015-07-07  Yao Qi  <yao.qi@linaro.org>
+
+       * gdb.multi/multi-arch-exec.exp: Set march1 and march2 to "" if target
+       is aarch64.  If target is aarch64, set compiler=${ARM_CC_FOR_TARGET}
+       if it exists.
+       * gdb.multi/multi-arch.exp: Likewise.
+
 2015-07-07  Simon Marchi  <simon.marchi@ericsson.com>
 
        * gdb.python/py-lazy-string.exp: Add missing parentheses to
index 45321083db82f76fd38324a8d7eb455f7654cdb3..67020d92e12672c019598ea3c02f5b46e3a97636 100644 (file)
@@ -44,6 +44,9 @@ set binfile2 [standard_output_file ${exec2}]
 if [istarget "s390*-*-*"] {
     set march1 "-m64"
     set march2 "-m31"
+} elseif { [istarget "aarch64*-*-*"] } {
+    set march1 ""
+    set march2 ""
 } else {
     set march1 "-m64"
     set march2 "-m32"
@@ -57,8 +60,21 @@ if { [prepare_for_testing ${testfile}.exp ${exec1} "${srcfile1}" \
     return -1
 }
 
+set options [list debug nowarnings]
+
+if { [istarget "aarch64*-*-*"] } {
+    if {[info exists ARM_CC_FOR_TARGET]} {
+       lappend options "compiler=${ARM_CC_FOR_TARGET}"
+    } else {
+       unsupported "ARM compiler is not known"
+       return -1
+    }
+} else {
+    lappend options "additional_flags=${march2}"
+}
+
 if { [prepare_for_testing ${testfile}.exp ${exec2} "${srcfile2}" \
-         [list debug nowarnings additional_flags=${march2}]] } {
+         $options] } {
     return -1
 }
 
index 22ad4daa3acee613b911c51b9dda0b2d9eb0a51c..4b255eeb29e5bf0bf0d7a1560e2db7024d92f1ae 100644 (file)
@@ -44,6 +44,9 @@ set binfile2 [standard_output_file ${exec2}]
 if [istarget "s390*-*-*"] {
     set march1 "-m64"
     set march2 "-m31"
+} elseif { [istarget "aarch64*-*-*"] } {
+    set march1 ""
+    set march2 ""
 } else {
     set march1 "-m64"
     set march2 "-m32"
@@ -54,8 +57,21 @@ if { [prepare_for_testing ${testfile}.exp ${exec1} "${srcfile1}" \
     return -1
 }
 
+set options [list debug nowarnings]
+
+if [istarget "aarch64*-*-*"] {
+    if {[info exists ARM_CC_FOR_TARGET]} {
+       lappend options "compiler=${ARM_CC_FOR_TARGET}"
+    } else {
+       unsupported "ARM compiler is not known"
+       return -1
+    }
+} else {
+    lappend options "additional_flags=${march2}"
+}
+
 if { [prepare_for_testing ${testfile}.exp ${exec2} "${srcfile2}" \
-         [list debug nowarnings additional_flags=${march2}]] } {
+        $options]} {
     return -1
 }