Fix PR gas/22738 (.dc.a directive has wrong size on SPARC 64-bit).
authorEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 29 Jan 2018 23:13:51 +0000 (00:13 +0100)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 29 Jan 2018 23:13:51 +0000 (00:13 +0100)
commitd85815e2d16f7c042d7912f1fa85bf1b9c28ca44
treedd849fa88569d0169d1a98e975a208fb8661831a
parent86b24e15c45bfe5085ed88280e1a5479120edce6
Fix PR gas/22738 (.dc.a directive has wrong size on SPARC 64-bit).

The .dc.a directive has wrong size (32 bits) on SPARC 64-bit because
the assembler sets the correct BFD architecture only at the very end
of the processing and it's too late for the directive.  It's fixed by
defining TARGET_MACH and making it return a sensible default value.

gas/
* config/tc-sparc.h (sparc_mach): Declare.
(TARGET_MACH): Define to above.
* config/tc-sparc.c (sparc_mach): New function.
(sparc_md_end): Minor tweak.
ld/
* testsuite/ld-elf/pr22450.d: Remove reference to SPARC64.
gas/ChangeLog
gas/config/tc-sparc.c
gas/config/tc-sparc.h
ld/ChangeLog
ld/testsuite/ld-elf/pr22450.d