r237801 - in /branches/gcc-6-branch/gcc: Change...

meissner@gcc.gnu.org meissner@gcc.gnu.org
Mon Jun 27 18:25:00 GMT 2016


Author: meissner
Date: Mon Jun 27 18:25:58 2016
New Revision: 237801

URL: https://gcc.gnu.org/viewcvs?rev=237801&root=gcc&view=rev
Log:
[gcc]
2016-06-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from trunk
	2016-06-21  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* stor-layout.c (layout_type): Move setting complex MODE to
	layout_type, instead of setting it ahead of time by the caller.

	Back port from trunk
	2016-05-11  Alan Modra  <amodra@gmail.com>

	* config/rs6000/rs6000.c (is_complex_IBM_long_double,
	abi_v4_pass_in_fpr): New functions.
	(rs6000_function_arg_boundary): Exclude complex IBM long double
	from 64-bit alignment when ABI_V4.
	(rs6000_function_arg, rs6000_function_arg_advance_1,
	rs6000_gimplify_va_arg): Use abi_v4_pass_in_fpr.

	Back port from trunk
	2016-05-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* machmode.h (mode_complex): Add support to give the complex mode
	for a given mode.
	(GET_MODE_COMPLEX_MODE): Likewise.
	* stor-layout.c (layout_type): For COMPLEX_TYPE, use the mode
	stored by build_complex_type and gfc_build_complex_type instead of
	trying to figure out the appropriate mode based on the size. Raise
	an assertion error, if the type was not set.
	* genmodes.c (struct mode_data): Add field for the complex type of
	the given type.
	(blank_mode): Likewise.
	(make_complex_modes): Remember the complex mode created in the
	base type.
	(emit_mode_complex): Write out the mode_complex array to map a
	type mode to the complex version.
	(emit_insn_modes_c): Likewise.
	* tree.c (build_complex_type): Set the complex type to use before
	calling layout_type.
	* config/rs6000/rs6000.c (rs6000_hard_regno_nregs_internal): Add
	support for __float128 complex datatypes.
	(rs6000_hard_regno_mode_ok): Likewise.
	(rs6000_setup_reg_addr_masks): Likewise.
	(rs6000_complex_function_value): Likewise.
	* config/rs6000/rs6000.h (FLOAT128_IEEE_P): Likewise.
	__float128 and __ibm128 complex.
	(FLOAT128_IBM_P): Likewise.
	(ALTIVEC_ARG_MAX_RETURN): Likewise.
	* doc/extend.texi (Additional Floating Types): Document that
	-mfloat128 must be used to enable __float128.  Document complex
	__float128 and __ibm128 support.

[gcc/testsuite]
2016-06-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	Back port from trunk
	2016-05-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/float128-complex-1.c: New tests for complex
	__float128.
	* gcc.target/powerpc/float128-complex-2.c: Likewise.


Added:
    branches/gcc-6-branch/gcc/testsuite/gcc.target/powerpc/float128-complex-1.c
      - copied unchanged from r237490, trunk/gcc/testsuite/gcc.target/powerpc/float128-complex-1.c
    branches/gcc-6-branch/gcc/testsuite/gcc.target/powerpc/float128-complex-2.c
      - copied unchanged from r237490, trunk/gcc/testsuite/gcc.target/powerpc/float128-complex-2.c
Modified:
    branches/gcc-6-branch/gcc/ChangeLog
    branches/gcc-6-branch/gcc/config/rs6000/rs6000.c
    branches/gcc-6-branch/gcc/config/rs6000/rs6000.h
    branches/gcc-6-branch/gcc/doc/extend.texi
    branches/gcc-6-branch/gcc/genmodes.c
    branches/gcc-6-branch/gcc/machmode.h
    branches/gcc-6-branch/gcc/stor-layout.c
    branches/gcc-6-branch/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list