[PATCH 7/9] Gccgo port to s390[x] -- part I

Dominik Vogt vogt@linux.vnet.ibm.com
Tue Sep 9 13:02:00 GMT 2014


This patch extends the -fdump-go-spec option to handle bitfields
and unions and fixes handlinx of zero length arrays.  All of this
is necessary for s390[x] since the system headers use these
features.  Please check the commit comment for a detailed
description of the patch.

gcc/ChangeLog
-------------
2014-09-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

        * godump.c (precision_to_units): New helper function.
        (go_append_artificial_name): Ditto.
        (go_append_decl_name): Ditto.
        (go_append_bitfield): Ditto.
        (go_get_uinttype_for_precision): Ditto.
        (go_append_padding): Ditto.
        (go_force_record_alignment): Ditto.
        (go_format_type): Represent unions with an array of uints of the size
        of the alignment in go.  This fixes the 'random' size of the union's
        representation using just the first field.
        (go_format_type): Add argument that indicates whether a record is
        nested (used for generation of artificial go names).
        (go_output_fndecl): Adapt to new go_format_type signature.
        (go_output_typedef): Ditto.
        (go_output_var): Ditto.
        (go_output_var): Prefer to output type as alias (typedef).
        (go_format_type): Bitfields in records are simulated as arrays of bytes
        in go.

2014-09-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

        * godump.c (go_format_type): Fix handling of arrays with zero elements.

gcc/testsuite/ChangeLog
-----------------------
2014-09-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

        * gcc.misc-tests/godump-1.c: Add tests for bitfields and unions.

2014-09-05  Dominik Vogt  <vogt@linux.vnet.ibm.com>

        * gcc.misc-tests/godump.exp: New.
        * gcc.misc-tests/godump-1.c: New.

Ciao

Dominik ^_^  ^_^

-- 

Dominik Vogt
IBM Germany
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-godump-Support-bitfields-and-unions-in-go_format_typ.patch
Type: text/x-diff
Size: 47686 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20140909/1c56cb9e/attachment.bin>


More information about the Gcc-patches mailing list