gdb.dwarf2/dw2-dir-file-name.exp fails to build using Clang because
the generated assembly language contains .ascii directives with more
than one string literal. gdb.dwarf2/dw2-restore.exp fails to build
using Clang because it contains .func and .endfunc directives.
This commit causes Clang to invoke the system assembler to assemble
the relevant files.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-dir-file-name.exp: Use system assembler
when compiling with clang.
* gdb.dwarf2/dw2-restore.exp: Likewise
+2020-08-25 Gary Benson <gbenson@redhat.com>
+
+ * gdb.dwarf2/dw2-dir-file-name.exp: Use system assembler
+ when compiling with clang.
+ * gdb.dwarf2/dw2-restore.exp: Likewise
+
2020-08-25 Gary Benson <gbenson@redhat.com>
* gdb.cp/ambiguous.exp: Enable test when compiling with GCC.
# CU's DW_AT_name and .debug_line's filename.
lappend opts "additional_flags=-DFILE=\"${srctmpfile}\""
+# Clang's integrated assembler doesn't support .ascii directives
+# with multiple string literals.
+if { [test_compiler_info clang*] } {
+ lappend opts "additional_flags=-fno-integrated-as"
+}
+
if { [gdb_compile "${asmsrcfile} ${srcdir}/${subdir}/$srcfile" "${binfile}" executable $opts] != "" } {
untested "failed to compile"
return -1
}
standard_testfile .S
+set opts [list {additional_flags=-nostdlib}]
+
+# Clang's integrated assembler doesn't support .func or .endfunc.
+if { [test_compiler_info clang*] } {
+ lappend opts [list {additional_flags=-fno-integrated-as}]
+}
+
if {[prepare_for_testing "failed to prepare" $testfile [list $srcfile] \
- [list {additional_flags=-nostdlib}]]} {
+ $opts]} {
return -1
}