binutils-gdb/gdb/features/i386
Yao Qi f49ff00066 [GDBserver] Centralize tdesc for i386-linux
tdesc_i386_XXX_linux is used in many places in linux-x86-low.c and this
patch adds a new function i386_linux_read_description to return the right
tdesc according to xcr0.  i386_linux_read_description is quite similar to
the counterpart in GDB, and the following patch will share the duplicated
code, so this patch adds arch/tdesc.h includes the declarations of various
tdesc apis which are used by the shared code.  The generated c feature
files can include arch/tdesc.h only.

gdb/gdbserver:

2017-09-05  Yao Qi  <yao.qi@linaro.org>

	* configure.srv (srv_tgtobj): Append linux-x86-tdesc.o.
	(ipa_obj): Likewise.
	* linux-i386-ipa.c: Include common/x86-xstate.h
	(get_ipa_tdesc): Call i386_linux_read_description.
	(initialize_low_tracepoint): Don't call  init_registers_XXX
	functions, call initialize_low_tdesc instead.
	* linux-x86-low.c (x86_linux_read_description): Call
	i386_linux_read_description.
	(initialize_low_arch): Don't call init_registers_i386_XXX
	functions, call initialize_low_tdesc.
	* linux-x86-tdesc.c: New file.
	* linux-x86-tdesc.h (x86_linux_tdesc): New X86_TDESC_LAST.
	(i386_get_ipa_tdesc_idx): Declare.
	(i386_get_ipa_tdesc): Declare.
	(initialize_low_tdesc): Declare.

gdb:

2017-09-05  Yao Qi  <yao.qi@linaro.org>

	* arch/tdesc.h: New file.
	* regformats/regdat.sh: Generate code using tdesc_create_reg.
	* target-descriptions.c: Update comments.
	* target-descriptions.h: Include "arch/tdesc.h".  Remove the
	declarations.
	* features/i386/32bit-avx.c: Re-generated.
	* features/i386/32bit-avx512.c: Re-generated.
	* features/i386/32bit-core.c: Re-generated.
	* features/i386/32bit-linux.c: Re-generated.
	* features/i386/32bit-mpx.c: Re-generated.
	* features/i386/32bit-pkeys.c: Re-generated.
	* features/i386/32bit-sse.c: Re-generated.
2017-09-05 09:54:53 +01:00
..
32bit-avx512.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-avx512.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
32bit-avx.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-avx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
32bit-core.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-core.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
32bit-linux.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
32bit-mpx.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-mpx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
32bit-pkeys.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-pkeys.xml Add support for Intel PKRU register to GDB and GDBserver. 2017-02-17 11:44:48 +01:00
32bit-sse.c [GDBserver] Centralize tdesc for i386-linux 2017-09-05 09:54:53 +01:00
32bit-sse.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-avx512.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-avx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-core.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-mpx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
64bit-pkeys.xml Add support for Intel PKRU register to GDB and GDBserver. 2017-02-17 11:44:48 +01:00
64bit-segments.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
64bit-sse.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
amd64-avx-avx512-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-avx512-linux.xml Add target description for avx-avx512. 2017-02-17 11:44:36 +01:00
amd64-avx-avx512.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-avx512.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
amd64-avx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
amd64-avx-mpx-avx512-pku-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-mpx-avx512-pku-linux.xml Add support for Intel PKRU register to GDB and GDBserver. 2017-02-17 11:44:48 +01:00
amd64-avx-mpx-avx512-pku.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-mpx-avx512-pku.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
amd64-avx-mpx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-mpx-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
amd64-avx-mpx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx-mpx.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
amd64-avx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-avx.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
amd64-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
amd64-mpx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-mpx-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
amd64-mpx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64-mpx.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
amd64.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
amd64.xml Include the fs_base and gs_base registers in amd64 target descriptions. 2017-07-11 09:46:29 -07:00
i386-avx-avx512-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-avx512-linux.xml Add target description for avx-avx512. 2017-02-17 11:44:36 +01:00
i386-avx-avx512.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-avx512.xml Add target description for avx-avx512. 2017-02-17 11:44:36 +01:00
i386-avx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-avx-mpx-avx512-pku-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-mpx-avx512-pku-linux.xml Add support for Intel PKRU register to GDB and GDBserver. 2017-02-17 11:44:48 +01:00
i386-avx-mpx-avx512-pku.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-mpx-avx512-pku.xml Add support for Intel PKRU register to GDB and GDBserver. 2017-02-17 11:44:48 +01:00
i386-avx-mpx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-mpx-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-avx-mpx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx-mpx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-avx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-avx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-linux.xml Adjust the order of 32bit-linux.xml and 32bit-sse.xml in i386/i386-linux.xml 2017-06-20 12:08:33 +01:00
i386-mmx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-mmx-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-mmx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-mmx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-mpx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-mpx-linux.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386-mpx.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386-mpx.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
i386.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
i386.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
x32-avx-avx512-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
x32-avx-avx512-linux.xml Add target description for avx-avx512. 2017-02-17 11:44:36 +01:00
x32-avx-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
x32-avx-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00
x32-core.xml update copyright year range in GDB files 2017-01-01 10:52:34 +04:00
x32-linux.c Use visitor pattern for "maint print c-tdesc" 2017-07-26 12:56:54 +01:00
x32-linux.xml amd64-linux: expose system register FS_BASE and GS_BASE for Linux. 2017-01-27 15:20:14 +01:00