binutils-gdb/gdb/arch
Sergio Durigan Junior e5a77256e8 Guard declarations of 'sve_{vq,vl}_from_{vl,vq}' macros on Aarch64 (and unbreak build)
Commit 122394f147 ("Function for reading
the Aarch64 SVE vector length") has added macros to manipulate SVE
vector sizes based on Linux kernel sources, but did not guard them
with #ifndef's, which breaks the build when the system headers already
have these macros:

    CXX    aarch64-linux-nat.o
  In file included from ../../gdb/aarch64-tdep.h:25,
                   from ../../gdb/aarch64-linux-nat.c:30:
  ../../gdb/arch/aarch64.h:79: error: "sve_vq_from_vl" redefined [-Werror]
   #define sve_vq_from_vl(vl) ((vl) / 0x10)

  In file included from /usr/include/bits/sigcontext.h:30,
                   from /usr/include/signal.h:291,
                   from build-gnulib/import/signal.h:52,
                   from ../../gdb/linux-nat.h:23,
                   from ../../gdb/aarch64-linux-nat.c:26:
  /usr/include/asm/sigcontext.h:154: note: this is the location of the previous definition
   #define sve_vq_from_vl(vl) ((vl) / SVE_VQ_BYTES)

  In file included from ../../gdb/aarch64-tdep.h:25,
                   from ../../gdb/aarch64-linux-nat.c:30:
  ../../gdb/arch/aarch64.h:80: error: "sve_vl_from_vq" redefined [-Werror]
   #define sve_vl_from_vq(vq) ((vq) * 0x10)

  In file included from /usr/include/bits/sigcontext.h:30,
                   from /usr/include/signal.h:291,
                   from build-gnulib/import/signal.h:52,
                   from ../../gdb/linux-nat.h:23,
                   from ../../gdb/aarch64-linux-nat.c:26:
  /usr/include/asm/sigcontext.h:155: note: this is the location of the previous definition
   #define sve_vl_from_vq(vq) ((vq) * SVE_VQ_BYTES)

In order to fix this breakage, this commit guards the declaration of
the macros using #ifndef's.

gdb/ChangeLog:
2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>

	* arch/aarch64.h (sve_vg_from_vl): Guard with #ifndef.
	(sve_vl_from_vg): Likewise.
	(sve_vq_from_vl): Likewise.
	(sve_vl_from_vq): Likewise.
	(sve_vq_from_vg): Likewise.
	(sve_vg_from_vq): Likewise.
2018-06-06 17:35:01 -04:00
..
aarch64-insn.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
aarch64-insn.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
aarch64.c Use uint64_t for SVE VQ 2018-06-04 10:50:59 +01:00
aarch64.h Guard declarations of 'sve_{vq,vl}_from_{vl,vq}' macros on Aarch64 (and unbreak build) 2018-06-06 17:35:01 -04:00
amd64.c Add "common-defs.h" include to files in arch/ subdir not yet including it. 2018-02-21 11:03:41 -08:00
amd64.h Move arch/tdesc.h to common/tdesc.h 2018-02-26 11:46:57 +00:00
arm-get-next-pcs.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
arm-get-next-pcs.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
arm-linux.c Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
arm-linux.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
arm.c Fix "fall through" comments 2018-05-04 22:04:46 -06:00
arm.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
i386.c Move arch/tdesc.h to common/tdesc.h 2018-02-26 11:46:57 +00:00
i386.h Move arch/tdesc.h to common/tdesc.h 2018-02-26 11:46:57 +00:00
ppc-linux-common.c [PowerPC] Recognize isa205 in linux core files 2018-05-22 11:52:03 -03:00
ppc-linux-common.h [PowerPC] Recognize isa205 in linux core files 2018-05-22 11:52:03 -03:00
ppc-linux-tdesc.h [PowerPC] Consolidate linux target description selection 2018-05-22 11:52:02 -03:00
tic6x.c Move arch/tdesc.h to common/tdesc.h 2018-02-26 11:46:57 +00:00
tic6x.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00
xtensa.h Update copyright year range in all GDB files 2018-01-02 07:38:06 +04:00