+2020-12-04 Tom de Vries <tdevries@suse.de>
+
+ PR testsuite/26990
+ * gdb.arch/amd64-gs_base.exp: Handle -m32 where fs_base and gs_base
+ are unsupported.
+
2020-12-04 Tom de Vries <tdevries@suse.de>
* gdb.reverse/insn-reverse.exp: Don't break inside gdb_test_multiple
return -1
}
+# Test the presence of fs_base and gs_base on the system
+# register group and values.
+#
+set ws "\[\t \]+"
+set info_reg_out [multi_line "info register sys" \
+ "fs_base${ws}$hex${ws}$decimal"\
+ "gs_base${ws}$hex${ws}$decimal"\
+ "orig_rax${ws}$hex${ws}\[-\]$decimal" ]
+set info_reg_out_m32 [multi_line "info register sys" \
+ "orig_eax${ws}$hex${ws}\[-\]$decimal" ]
+
+set supported 0
+gdb_test_multiple "info register sys" "" {
+ -re -wrap $info_reg_out {
+ set supported 1
+ }
+ -re -wrap $info_reg_out_m32 {
+ }
+}
+
+if { ! $supported } {
+ unsupported "target does not support fs_base and gs_base"
+ return -1
+}
+
gdb_test "print /x \$fs_base" "= $hex" "print fs_base"
gdb_test "print /x \$gs_base" "= $hex" "print gs_base"
# Test the presence of fs_base and gs_base on the system
# register group and values.
#
-set ws "\[\t \]+"
set info_reg_out [multi_line "info register sys" \
"fs_base${ws}0x2${ws}2"\
"gs_base${ws}0x3${ws}3"\