Commit Graph

94287 Commits

Author SHA1 Message Date
Kaveh R. Ghazi
eb6f9a86c5 gfortran.h (gfc_expr): Use mpc_t to represent complex numbers.
* gfortran.h (gfc_expr): Use mpc_t to represent complex numbers.

	* arith.c, dump-parse-tree.c, expr.c, module.c, resolve.c,
	simplify.c, target-memory.c, target-memory.h, trans-const.c,
	trans-expr.c: Convert to mpc_t throughout.

From-SVN: r148711
2009-06-19 15:33:55 +00:00
Ian Lance Taylor
642324bb16 ggc-page.c (ggc_pch_write_object): Initialize emptyBytes.
./:	* ggc-page.c (ggc_pch_write_object): Initialize emptyBytes.
	* sdbout.c (sdb_debug_hooks): Initialize non-SDB_DEBUGGING_INFO
	version.

	* c-decl.c (finish_decl): If -Wc++-compat, warn about
	uninitialized const.
testsuite/:
	* gcc.dg/Wcxx-compat-17.c: New testcase.

From-SVN: r148710
2009-06-19 15:32:43 +00:00
Ian Lance Taylor
dc491a250a dse.c (struct store_info): Rename bitmap field to bmap.
./:	* dse.c (struct store_info): Rename bitmap field to bmap.  Change
	all uses.

	* c-decl.c (in_struct, struct_types): Remove.
	(struct c_binding): Add in_struct field.
	(c_binding_ptr): Define type, along with VEC.
	(struct c_struct_parse_info): Define.
	(struct_parse_info): New static variable.
	(bind): Initialize in_struct field.
	(start_struct): Remove enclosing_in_struct and
	enclosing_struct_types parameters.  Add
	enclosing_struct_parse_info parameter.  Change all callers.  Set
	struct_parse_info rather than in_struct and struct_types.
	(grokfield): If -Wc++-compat and there is a symbol binding for the
	field name, set the in_struct flag and push it on the
	struct_parse_info->fields vector.
	(warn_cxx_compat_finish_struct): New static function.
	(finish_struct): Remove enclosing_in_struct and
	enclosing_struct_types parameters.  Add
	enclosing_struct_parse_info parameter.  Change all callers.  Don't
	set C_TYPE_DEFINED_IN_STRUCT here.  Call
	warn_cxx_compat_finish_struct.  Free struct_parse_info and set to
	parameter.  Only push on struct_types if warn_cxx_compat.
	(finish_enum): Only push on struct_types if warn_cxx_compat.
	(declspecs_add_type): Add loc parameter.  Change all callers.
	Change all error calls to error_at.  Pass loc, not input_location,
	to pedwarn calls.  Warn if -Wc++-compat and a typedef name is
	defined in a struct.  If -Wc++-compat and parsing a struct, record
	that a typedef name was used.
	* c-parser.c (c_parser_declspecs): Get location to pass to
	declspecs_add_type.
	(c_parser_struct_or_union_specifier): Update calls to start_struct
	and finish_struct.
	* c-tree.h (struct c_struct_parse_info): Declare.
	(finish_struct, start_struct): Update declarations.
	(declspecs_add_type): Update declaration.
objc/:
	* objc-act.c (objc_in_struct, objc_struct_types): Remove.
	(objc_struct_info): New static variable.
	(objc_start_struct): Pass &objc_struct_info, not &objc_in_struct
	and &objc_struct_types, to start_struct.
	(objc_finish_struct): Likewise for finish_struct.
objcp/:
	* objcp-decl.h (start_struct): Remove in_struct and struct_types
	parameters.  Add struct_info parameter.
	(finish_struct): Likewise.
testsuite/:
	* gcc.dg/Wcxx-compat-15.c: New testcase.

From-SVN: r148709
2009-06-19 15:29:18 +00:00
Ian Lance Taylor
88eeff6f5a c-decl.c (grokdeclarator): If -Wc++-compat, warn about a global variable with an anonymous type.
./:	* c-decl.c (grokdeclarator): If -Wc++-compat, warn about a global
	variable with an anonymous type.
fortran/:
	* cpp.c (struct gfc_cpp_option_data): Give this struct, used for
	the global variable gfc_cpp_option, a name.
testsuite/:
	* gcc.dg/Wcxx-compat-16.c: New testcase.

From-SVN: r148708
2009-06-19 15:25:16 +00:00
Uros Bizjak
28a876a429 see.c: Remove for real.
* see.c: Remove for real.

From-SVN: r148707
2009-06-19 16:26:24 +02:00
Uros Bizjak
dc6707b847 re PR testsuite/40491 (Revision 148663 caused extra failures)
* optabs.h (enum optab_index): Add new OTI_significand.
	(significand_optab): Define corresponding macro.
	* optabs.c (init_optabs): Initialize significand_optab.
	* genopinit.c (optabs): Implement significand_optab using
	significand?f2 patterns.
	* builtins.c (expand_builtin_mathfn): Handle
	BUILT_IN_SIGNIFICAND{,F,L}.
	(expand_builtin): Expand BUILT_IN_SIGNIFICAND{,F,L} using
	expand_builtin_mathfn if flag_unsafe_math_optimizations is set.

	* config/i386/i386.md (significandxf2, significand<mode>2): New
	expanders to implement significandf, significand and significandl
	built-ins as inline x87 intrinsics.

testsuite/ChangeLog:

	* gcc.dg/builtins-34.c: Add significand cases.

	PR testsuite/40491
	* testsuite/gcc.dg/20080522-1.c: Remove testcase for real.
	* testsuite/gcc.dg/20080528-1.c: Ditto.

From-SVN: r148705
2009-06-19 16:22:16 +02:00
Arnaud Charlet
4646d048e4 Update comments.
From-SVN: r148703
2009-06-19 14:29:26 +02:00
Arnaud Charlet
1313f39c90 Minor reformatting.
From-SVN: r148702
2009-06-19 14:29:07 +02:00
Arnaud Charlet
659819b971 [multiple changes]
2009-06-19  Emmanuel Briot  <briot@adacore.com>

	* prj-ext.adb, makeutl.adb, makeutl.ads (Executable_Prefix_Path): Now
	make sure we always return a name ending with a path separator.

2009-06-19  Javier Miranda  <miranda@adacore.com>

	* sem_ch12.adb (Instantiate_Package_Body, Instantiate_Subprogram_Body):
	Save and restore the visibility of the parent when installed.

2009-06-19  Jose Ruiz  <ruiz@adacore.com>

	* s-tposen.ads (Protection_Entry): Replace fields L, Ceiling, and Owner
	by Common which contains all these fields.

	* s-tposen.adb (Initialize_Protection_Entry, Lock_Entry,
	Lock_Read_Only_Entry, Timed_Protected_Single_Entry_Call, Unlock_Entry):
	Remove code duplication in this package by means of calling the
	equivalent code in s-taprob.

2009-06-19  Robert Dewar  <dewar@adacore.com>

	* a-einuoc.ads: Minor reformatting

From-SVN: r148701
2009-06-19 14:23:38 +02:00
Ed Falis
0eed21bd6a a-einuoc.ads, [...]: Code clean up.
2009-06-19  Ed Falis  <falis@adacore.com>

	* a-einuoc.ads, s-osinte-vxworks.ads, s-vxwext.ads, s-vxwext-kernel.adb,
	s-vxwext-kernel.ads, s-vxwext-rtp.ads: Code clean up.

From-SVN: r148698
2009-06-19 13:06:38 +02:00
Arnaud Charlet
93c3fca75e [multiple changes]
2009-06-19  Eric Botcazou  <ebotcazou@adacore.com>

	* einfo.ads (Handling of Type'Size Values): Fix Object_Size values.

2009-06-19  Robert Dewar  <dewar@adacore.com>

	* a-nudira.adb (Need_64): Handle negative ranges and also dynamic
	ranges

	* checks.adb (Determine_Range): Move the test for generic types later.

	* sem_eval.adb (Compile_Time_Compare): Improve circuitry to catch more
	cases.
	(Eval_Relational_Op): Fold more cases including string compares

	* sem_util.ads, sem_util.adb (References_Generic_Formal_Type): New
	function.

From-SVN: r148697
2009-06-19 12:59:04 +02:00
Arnaud Charlet
e29e248316 [multiple changes]
2009-06-19  Robert Dewar  <dewar@adacore.com>

	* sem_type.ads, sem_ch12.adb: Minor reformatting

	* s-wchcnv.adb (UTF_32_To_Char_Sequence): Handle invalid data properly

2009-06-19  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Build_Wrapper_Spec): Handle properly an overridden
	primitive operation of a rivate extension whose controlling argument
	is an out parameter.

	* sem.adb (Walk_Library_Units): exclude generic package declarations
	from check.

From-SVN: r148696
2009-06-19 12:54:36 +02:00
Arnaud Charlet
c3b74b8ac8 sem.adb (Walk_Library_Items): Include bodies in the list of units to traverse...
* sem.adb (Walk_Library_Items): Include bodies in the list of units to
	traverse, to account for front-end inlining and instantiations in a
	spec or in the main unit.

From-SVN: r148695
2009-06-19 12:49:31 +02:00
Arnaud Charlet
f26d5cd3cb [multiple changes]
2009-06-19  Thomas Quinot  <quinot@adacore.com>

	* i-vxwoio.ads: Add comments

2009-06-19  Thomas Quinot  <quinot@adacore.com>

	* socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
	g-socthi-vxworks.ads, g-socthi-mingw.adb, g-socthi-mingw.ads,
	g-socthi.adb, g-socthi.ads, g-socket.adb, g-sothco.ads
	(GNAT.Sockets.Thin.C_Ioctl): Rename to Socket_Ioctl.
	(GNAT.Sockets.Thin.Socket_Ioctl): Use new function
	Thin_Common.Socket_Ioctl.
	(GNAT.Sockets.Thin_Common.Socket_Ioctl): Binding to new C wrapper
	__gnat_socket_ioctl.
	(__gnat_socket_ioctl): Wrapper for ioctl(2) called with a single int*
	argument after the file descriptor and request code.

2009-06-19  Robert Dewar  <dewar@adacore.com>

	* checks.adb: Minor reformatting

From-SVN: r148694
2009-06-19 12:47:49 +02:00
Arnaud Charlet
1abad480e0 [multiple changes]
2009-06-19  Jose Ruiz  <ruiz@adacore.com>

	* env.c (__gnat_environ): RTX does not support this functionality.

2009-06-19  Sergey Rybin  <rybin@adacore.com>

	* gnat_ugn.texi, vms_data.ads: Fix VMS qualifiers.

2009-06-19  Ed Schonberg  <schonberg@adacore.com>

	* sem.adb (Walk_Library_Items): Include bodies in the list of units to
	traverse, to account for front-end inlining and instantiations in a
	spec or in the main unit.

2009-06-19  Robert Dewar  <dewar@adacore.com>

	* checks.adb (Determine_Range): Do not attempt to get range of generic
	type.

From-SVN: r148693
2009-06-19 12:38:49 +02:00
Sergey Rybin
c38e990f94 gnat_ugn.texi, [...]: Add the documentation for the new gnatmetric option for generating the schema...
2009-06-19  Sergey Rybin  <rybin@adacore.com>

	* gnat_ugn.texi, vms_data.ads: Add the documentation for the new
	gnatmetric option for generating the schema file for gnatmetric XML
	output. Add corresponding VMS qualifier.

From-SVN: r148692
2009-06-19 12:34:46 +02:00
Arnaud Charlet
1175f0b6e5 [multiple changes]
2009-06-19  Robert Dewar  <dewar@adacore.com>

	* g-cgi.adb: Minor reformatting

2009-06-19  Eric Botcazou  <ebotcazou@adacore.com>

	* s-intman-solaris.adb (Notify_Exception): Do not discriminate on the
	signal code for SIGFPE and raise Program_Error for SIGILL.

	* s-osinte-solaris.ads: Remove signal code constants for SIGFPE.

2009-06-19  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Nvis_Messages): Do not list an entity declared in a
	generic package if there is a visibility candidate that is declared in
	a regular package.

From-SVN: r148691
2009-06-19 12:32:08 +02:00
Janus Weil
7e9c61e83e re PR fortran/40450 ([F03] procedure pointer as actual argument)
2009-06-19  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40450
	* trans-expr.c (gfc_conv_procedure_call): Only add an extra addr_expr
	to a procedure pointer actual argument, if it is not itself a
	dummy arg.

2009-06-19  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40450
	* gfortran.dg/proc_ptr_20.f90: New.

From-SVN: r148690
2009-06-19 10:11:21 +02:00
Anatoly Sokolov
dd26af7063 avr.c (avr_override_options): Remove setting value of PARAM_INLINE_CALL_COST.
* config/avr/avr.c (avr_override_options): Remove setting value of
	PARAM_INLINE_CALL_COST.

From-SVN: r148689
2009-06-19 11:35:25 +04:00
GCC Administrator
ada506eaec Daily bump.
From-SVN: r148688
2009-06-19 00:16:33 +00:00
Richard Henderson
394bd84dd2 re PR testsuite/40488 (Revision 148642 caused extra failures)
PR 40488
        * tree-pass.h (TDF_ASMNAME): New.
        * tree-dump.c (dump_options): Add asmname.
        * doc/invoke.texi: Document it.

        * tree-pretty-print.c (maybe_dump_asm_name): Merge into...
        (dump_decl_name): ...here.
        (dump_function_name): New flags arg; mind TDF_ASMNAME.
        (dump_generic_node): Update dump_function_name calls.
        (print_call_name): New flags arg; update all dump calls.
        * diagnostic.h (print_call_name): Update.
        * gimple-pretty-print.c (dump_gimple_call): Update.

From-SVN: r148685
2009-06-18 16:27:40 -07:00
H.J. Lu
2a457a9b4f re PR target/40470 (unable to find a register to spill in class ‘SSE_FIRST_REG’)
gcc/

2009-06-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/40470
	* config/i386/i386.h (CLASS_LIKELY_SPILLED_P): Add SSE_FIRST_REG.

gcc/testsuite/

2009-06-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/40470
	* gcc.dg/torture/pr40470-1.c: New.
	* gcc.dg/torture/pr40470-2.c: Likewise.
	* gcc.dg/torture/pr40470-3.c: Likewise.
	* gcc.dg/torture/pr40470-4.c: Likewise.

From-SVN: r148673
2009-06-18 14:12:12 -07:00
Diego Novillo
fca5bb5ca8 plugins.texi: Document plugin_is_GPL_compatible.
* doc/plugins.texi: Document plugin_is_GPL_compatible.
	* plugin.c (str_license): Declare.
	(try_init_one_plugin): Assert that the symbol
	'plugin_is_GPL_compatible' exists.

testsuite/ChangeLog

	* gcc.dg/plugin/selfassign.c: Declare plugin_is_GPL_compatible.
	* gcc.dg/plugin/ggcplug.c: Likewise.
	* gcc.dg/plugin/one_time_plugin.c: Likewise.
	* g++.dg/plugin/selfassign.c: Likewise.
	* g++.dg/plugin/attribute_plugin.c: Likewise.
	* g++.dg/plugin/dumb_plugin.c: Likewise.

From-SVN: r148667
2009-06-18 15:48:35 -04:00
Aldy Hernandez
3600f67820 class.c (get_vtable_decl): Replace finish_decl with cp_finish_decl.
* class.c (get_vtable_decl): Replace finish_decl with cp_finish_decl.
        * decl.c (finish_decl): Remove.
        (declare_global_var): Replace finish_decl with cp_finish_decl.
        (start_method): Same.
        * rtti.c (emit_tinfo_decl): Same.
        * pt.c (tsubst_expr): Same.
        (instantiate_decl): Same.
        * decl2.c (grokbitfield): Same.
        * name-lookup.c (pushdecl_top_level_1): Same.
        * cp-tree.h: Remove finish_decl.

From-SVN: r148666
2009-06-18 18:09:12 +00:00
Sergei Dyshel
b6680d7271 see removal
From-SVN: r148665
2009-06-18 16:11:18 +00:00
Sergei Dyshel
8393a9c80c see removal
From-SVN: r148664
2009-06-18 16:08:00 +00:00
Martin Jambor
2a45675fd0 tree-sra.c: Include statistics.h
2009-06-18  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c: Include statistics.h
	(sra_stats): New variable.
	(sra_initialize): Clear sra_stats.
	(create_access_replacement): Increment sra_stats.replacements.
	(get_access_replacement): Do not return twice.
	(analyze_all_variable_accesses): Increment statistics counter by the
	number of scalarized aggregates.
	(generate_subtree_copies): Increment sra_stats.subtree_copies.
	(sra_modify_expr): Increment sra_stats.exprs.
	(load_assign_lhs_subreplacements): Increment sra_stats.subreplacements.
	(sra_modify_assign): Increment sra_stats.exprs,
	sra_stats.separate_lhs_rhs_handling and sra_stats.deleted.
	(perform_intra_sra): Update statistics counters.
	* Makefile.in (tree-sra.o): Add statistics.h to dependencies.

From-SVN: r148663
2009-06-18 17:38:36 +02:00
Manuel López-Ibáñez
b506a5a238 expr.c (num_div_op): Take explicit location.
2009-06-18  Manuel López-Ibáñez  <manu@gcc.gnu.org>

libcpp/	
	* expr.c (num_div_op): Take explicit location.
testsuite/	
	* gcc.dg/cpp/arith-3.c: Add column info.

From-SVN: r148662
2009-06-18 15:10:23 +00:00
Olivier Hainque
4c1a901679 system-aix64.ads: New file.
* system-aix64.ads: New file.
	* gcc-interface/Makefile.in (aix LIBGNAT_TARGET_PAIRS): Use the
	64bit system.ads for ppc64 multilib variants.

From-SVN: r148659
2009-06-18 14:13:20 +00:00
Sandra Loosemore
bdc4827b1c arm.c (TARGET_SCALAR_MODE_SUPPORTED_P): Redefine.
2009-06-18  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/arm/arm.c (TARGET_SCALAR_MODE_SUPPORTED_P): Redefine.
	(arm_scalar_mode_supported_p): New function.

	gcc/testsuite/
	* gcc.target/arm/fp16-compile-none-2.c: New.
	* gcc.target/arm/fp16-compile-ieee-12.c: New.
	* gcc.target/arm/fp16-compile-alt-12.c: New.

From-SVN: r148657
2009-06-18 08:33:27 -04:00
Sandra Loosemore
76d6502fc9 fp16-compile-alt-1.c: New.
2009-06-18  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.target/arm/fp16-compile-alt-1.c: New.
	* gcc.target/arm/fp16-compile-alt-2.c: New.
	* gcc.target/arm/fp16-compile-alt-3.c: New.
	* gcc.target/arm/fp16-compile-alt-4.c: New.
	* gcc.target/arm/fp16-compile-alt-5.c: New.
	* gcc.target/arm/fp16-compile-alt-6.c: New.
	* gcc.target/arm/fp16-compile-alt-7.c: New.
	* gcc.target/arm/fp16-compile-alt-8.c: New.
	* gcc.target/arm/fp16-compile-alt-9.c: New.
	* gcc.target/arm/fp16-compile-alt-10.c: New.
	* gcc.target/arm/fp16-compile-alt-11.c: New.
	* gcc.target/arm/fp16-compile-ieee-1.c: New.
	* gcc.target/arm/fp16-compile-ieee-2.c: New.
	* gcc.target/arm/fp16-compile-ieee-3.c: New.
	* gcc.target/arm/fp16-compile-ieee-4.c: New.
	* gcc.target/arm/fp16-compile-ieee-5.c: New.
	* gcc.target/arm/fp16-compile-ieee-6.c: New.
	* gcc.target/arm/fp16-compile-ieee-7.c: New.
	* gcc.target/arm/fp16-compile-ieee-8.c: New.
	* gcc.target/arm/fp16-compile-ieee-9.c: New.
	* gcc.target/arm/fp16-compile-ieee-10.c: New.
	* gcc.target/arm/fp16-compile-ieee-11.c: New.
	* gcc.target/arm/fp16-compile-none-1.c: New.
	* gcc.target/arm/fp16-compile-exprtype.c: New.
	* gcc.target/arm/fp16-compile-vcvt.c: New.
	* gcc.target/arm/fp16-builtins-1.c: New.
	* gcc.target/arm/fp16-rounding-alt-1.c: New.
	* gcc.target/arm/fp16-rounding-ieee-1.c: New.
	* gcc.target/arm/fp16-param-1.c: New.
	* gcc.target/arm/fp16-return-1.c: New.
	* gcc.target/arm/fp16-unprototyped-1.c: New.
	* gcc.target/arm/fp16-unprototyped-2.c: New.
	* gcc.target/arm/fp16-variadic-1.c: New.
	* gcc.dg/torture/arm-fp16-compile-assign.c: New.
	* gcc.dg/torture/arm-fp16-compile-convert.c: New.
	* gcc.dg/torture/arm-fp16-int-convert-alt.c: New.
	* gcc.dg/torture/arm-fp16-int-convert-ieee.c: New.
	* gcc.dg/torture/arm-fp16-ops.h: New.
	* gcc.dg/torture/arm-fp16-ops-1.c: New.
	* gcc.dg/torture/arm-fp16-ops-2.c: New.
	* gcc.dg/torture/arm-fp16-ops-3.c: New.
	* gcc.dg/torture/arm-fp16-ops-4.c: New.
	* gcc.dg/torture/arm-fp16-ops-5.c: New.
	* gcc.dg/torture/arm-fp16-ops-6.c: New.
	* gcc.dg/torture/arm-fp16-ops-7.c: New.
	* gcc.dg/torture/arm-fp16-ops-8.c: New.
	* g++.dg/ext/arm-fp16/fp16-overload-1.C: New.
	* g++.dg/ext/arm-fp16/fp16-return-1.C: New.
	* g++.dg/ext/arm-fp16/fp16-param-1.C: New.
	* g++.dg/ext/arm-fp16/fp16-mangle-1.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops.h: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-1.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-2.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-3.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-4.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-5.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-6.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-7.C: New.
	* g++.dg/ext/arm-fp16/arm-fp16-ops-8.C: New.

From-SVN: r148656
2009-06-18 08:30:19 -04:00
Paul Brook
d9dd51dc46 sfp-machine.h (_FP_NANFRAC_H, [...]): Define.
2009-06-18  Paul Brook  <paul@codesourcery.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* config/arm/sfp-machine.h (_FP_NANFRAC_H, _FP_NANSIGN_H): Define.
	(__extendhfsf2, __truncsfhf2): Define.
	* config/arm/fp16.c: New file.
	* config/arm/t-bpabi (LIB2FUNCS_STATIC_EXTRA): Add fp16.c.
	* config/arm/t-symbian (LIB2FUNCS_STATIC_EXTRA):  Add fp16.c.



Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r148655
2009-06-18 08:26:37 -04:00
Sandra Loosemore
0fd8c3ad1e extend.texi (Half-Precision): New section.
2009-06-18  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/extend.texi (Half-Precision): New section.
	* doc/invoke.texi (Option Summary): List -mfp16-format.
	(ARM Options): List neon-fp16 as -mfpu value.  Document -mfp16-format.
	* config/arm/arm.opt (mfp16-format=): New.
	* config/arm/arm.c: Include intl.h.
	(TARGET_INVALID_PARAMETER_TYPE): Redefine.
	(TARGET_INVALID_RETURN_TYPE): Redefine.
	(TARGET_PROMOTED_TYPE): Redefine.
	(TARGET_CONVERT_TO_TYPE): Redefine.
	(arm_fp16_format): Define.
	(all_fpus): Add entry for neon-fp16.
	(fp_model_for_fpu): Likewise.
	(struct fp16_format): Declare.
	(all_fp16_formats): Define.
	(arm_init_libfuncs): Add entries for HFmode conversions and arithmetic
	functions.
	(arm_override_options): Set arm_fp16_format. Call sorry for fp16
	and no ldrh.
	(arm_legitimate_index_p): Treat HFmode like HImode.
	(thumb1_legitimate_address_p): Make it recognize HFmode constants.
	(coproc_secondary_reload_class): Special-case HFmode.
	(arm_print_operand): Add 'z' specifier for vld1.16/vst1.16.
	(arm_hard_regno_mode_ok): Allow HFmode values in VFP registers.
	(arm_init_fp16_builtins): New.
	(arm_init_builtins): Call it.
	(arm_invalid_parameter_type): New.
	(arm_invalid_return_type): New.
	(arm_promoted_type): New.
	(arm_convert_to_type).
	(arm_file_start): Deal with neon-fp16 as fpu_name.  Emit tag for fp16
	format.
	(arm_emit_fp16_const): New function.
	(arm_mangle_type): Mangle __fp16 as "Dh".
	* config/arm/arm.h (TARGET_VFPD32): Make it know about
	FPUTYPE_NEON_FP16.
	(TARGET_NEON_FP16): New.
	(TARGET_NEON): Make it know about FPUTYPE_NEON_FP16.
	(enum fputype): Add FPUTYPE_NEON_FP16.
	(enum arm_fp16_format_type): Declare.
	(arm_fp16_format): Declare.
	(LARGEST_EXPONENT_IS_NORMAL): Define.
	* config/arm/arm-protos.h (arm_emit_fp16_const): Declare.
	* config/arm/arm-modes.def (HFmode): Define.
	* config/arm/vfp.md: (*movhf_vfp): New.
	(extendhfsf2): New.
	(truncsfhf2): New.
	* config/arm/arm.md: (fpu): Add neon_fp16.
	(floatsihf2, floatdihf2): New.
	(fix_trunchfsi2, fix_trunchfdi2): New.
	(truncdfhf2): New.
	(extendhfdf2): New.
	(movhf): New.
	(*arm32_movhf): New.
	(*thumb1_movhf): New.
	(consttable_2): Add check for HFmode constants.
	(consttable_4): Handle HFmode constants.

From-SVN: r148654
2009-06-18 08:24:10 -04:00
Uros Bizjak
2c2f70e1f2 convert.c (convert_to_integer): Convert (int)logb() into ilogb().
* convert.c (convert_to_integer): Convert (int)logb() into ilogb().

testsuite/ChangeLog:

	* gcc.dg/builtins-65.c: New test.

From-SVN: r148653
2009-06-18 13:35:38 +02:00
Janus Weil
f99098233b re PR fortran/40451 ([F03] procedure pointer assignment rejected)
2009-06-18  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40451
	* resolve.c (resolve_contained_fntype): Prevent implicit typing for
	procedures with explicit interface.
	* symbol.c (gfc_check_function_type): Ditto.

2009-06-18  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40451
	* gfortran.dg/proc_ptr_result_4.f90: New.

From-SVN: r148652
2009-06-18 10:09:40 +02:00
Uros Bizjak
c637b0fa0d ChangeLog: Various fixes.
* ChangeLog: Various fixes.
	* testsuite/ChangeLog: Ditto.

From-SVN: r148651
2009-06-18 09:58:17 +02:00
Olivier Hainque
db4fa1c121 collect2.c (main): Use CONST_CAST2 to perform char ** to const char ** conversion in AIX specific...
* collect2.c (main): Use CONST_CAST2 to perform char ** to
	const char ** conversion in AIX specific section.

From-SVN: r148649
2009-06-18 07:45:09 +00:00
Benjamin Kosnik
a9a51750b9 check_construct_destroy.h: New.
2009-06-17  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/23_containers/list/check_construct_destroy.h: New.
	Move test logic here.
	* testsuite/23_containers/list/moveable.h: Same.
	* testsuite/23_containers/list/modifiers/insert/25288.h: Same.
	* testsuite/23_containers/list/modifiers/1.h: Same.
	* testsuite/23_containers/list/modifiers/2.h: Same.
	* testsuite/23_containers/list/modifiers/3.h: Same.
	* testsuite/23_containers/list/modifiers/swap/1.h: Same.
	* testsuite/23_containers/list/modifiers/swap/2.h: Same.
	* testsuite/23_containers/list/modifiers/swap/3.h: Same.
	* testsuite/23_containers/list/operations/1.h: Same.
	* testsuite/23_containers/list/operations/2.h: Same.
	* testsuite/23_containers/list/operations/3.h: Same.
	* testsuite/23_containers/list/operations/4.h: Same.
	* testsuite/23_containers/list/operations/5.h: Same.
	* testsuite/23_containers/list/capacity/1.h: Same.
	* testsuite/23_containers/list/init-list.h: Same.
	* testsuite/23_containers/list/cons/1.h: Same.
	* testsuite/23_containers/list/cons/2.h: Same.
	* testsuite/23_containers/list/cons/3.h: Same.
	* testsuite/23_containers/list/cons/4.h: Same.
	* testsuite/23_containers/list/cons/5.h: Same.
	* testsuite/23_containers/list/cons/6.h: Same.
	* testsuite/23_containers/list/cons/7.h: Same.
	* testsuite/23_containers/list/cons/8.h: Same.
	* testsuite/23_containers/list/cons/9.h: Same.
	* testsuite/23_containers/list/cons/clear_allocator.h: Same.
	* testsuite/23_containers/list/modifiers/insert/25288.cc: Include test
	header.
	* testsuite/23_containers/list/modifiers/1.cc: Same.
	* testsuite/23_containers/list/modifiers/2.cc: Same.
	* testsuite/23_containers/list/modifiers/3.cc: Same.
	* testsuite/23_containers/list/modifiers/swap/1.cc: Same.
	* testsuite/23_containers/list/modifiers/swap/2.cc: Same.
	* testsuite/23_containers/list/modifiers/swap/3.cc: Same.
	* testsuite/23_containers/list/operations/1.cc: Same.
	* testsuite/23_containers/list/operations/2.cc: Same.
	* testsuite/23_containers/list/operations/3.cc: Same.
	* testsuite/23_containers/list/operations/4.cc: Same.
	* testsuite/23_containers/list/operations/5.cc: Same.
	* testsuite/23_containers/list/capacity/1.cc: Same.
	* testsuite/23_containers/list/init-list.cc: Same.
	* testsuite/23_containers/list/cons/1.cc: Same.
	* testsuite/23_containers/list/cons/2.cc: Same.
	* testsuite/23_containers/list/cons/3.cc: Same.
	* testsuite/23_containers/list/cons/4.cc: Same.
	* testsuite/23_containers/list/cons/5.cc: Same.
	* testsuite/23_containers/list/cons/6.cc: Same.
	* testsuite/23_containers/list/cons/7.cc: Same.
	* testsuite/23_containers/list/cons/8.cc: Same.
	* testsuite/23_containers/list/cons/9.cc: Same.
	* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
	* testsuite/23_containers/list/check_construct_destroy.cc: Same.
	* testsuite/23_containers/list/moveable.cc: Same.

From-SVN: r148644
2009-06-18 01:40:44 +00:00
H.J. Lu
6bec4135eb i386.c (ix86_special_builtin_type): Remove UINT64_FTYPE_PINT.
2009-06-17  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (ix86_special_builtin_type): Remove
	UINT64_FTYPE_PINT.  Add UINT64_FTYPE_PUNSIGNED.
	(bdesc_special_args): Updated.
	(ix86_init_mmx_sse_builtins): Likewise.
	(ix86_expand_special_args_builtin): Likewise.

From-SVN: r148643
2009-06-17 18:06:55 -07:00
Richard Henderson
958d6d5880 tree-pretty-print.c (maybe_dump_asm_name): New.
* tree-pretty-print.c (maybe_dump_asm_name): New.
        (dump_decl_name): Use it.
        (PRINT_FUNCTION_NAME): Merge into... 
        (dump_function_name): ... here.  Use maybe_dump_asm_name.

From-SVN: r148642
2009-06-17 17:30:48 -07:00
Cary Coutant
01a0acb767 Quick fix to last ChangeLog entry.
From-SVN: r148641
2009-06-17 17:20:31 -07:00
GCC Administrator
cdfcf5f9c0 Daily bump.
From-SVN: r148640
2009-06-18 00:16:57 +00:00
Cary Coutant
ed5ef2e408 dbxout.c (dbxout_source_line): Add is_stmt parameter.
* dbxout.c (dbxout_source_line): Add is_stmt parameter.
	Change caller.
	* debug.c (struct gcc_debug_hooks): Change placeholder for
	source_line hook.
	(debug_nothing_int_charstar_int): Replaced by...
	(debug_nothing_int_charstar_int_bool): ...this.
	* debug.h (struct gcc_debug_hooks): Add is_stmt parameter to
	source_line prototype.
	(debug_nothing_int_charstar_int): Replaced by...
	(debug_nothing_int_charstar_int_bool): ...this.
	* defaults.h (SUPPORTS_DISCRIMINATOR): New constant.
	* dwarf2out.c (dwarf2out_source_line): Add is_stmt parameter.
	Output is_stmt operand when necessary.
	* final.c (last_is_stmt): New variable.
	(final_start_function): Initialize last_is_stmt.
	(final_scan_insn): Pass is_stmt to source_line debug hook.
	(notice_source_line): Add is_stmt parameter.
	* sdbout.c (sdbout_source_line): Add is_stmt parameter.
	* vmsdbgout.c (vmsdbgout_source_line): Add is_stmt parameter.
	Change callers.
	* xcoffout.c (xcoffout_source_line): Add is_stmt parameter.
	* xcoffout.h (xcoffout_source_line): Add is_stmt parameter.

From-SVN: r148635
2009-06-17 16:54:40 -07:00
Ian Lance Taylor
b0f43ca013 expr.c (struct move_by_pieces_d): Rename from move_by_pieces.
* expr.c (struct move_by_pieces_d): Rename from move_by_pieces.
	Change all uses.
	(struct store_by_pieces_d): Rename from store_by_pieces.  Change
	call uses.

From-SVN: r148633
2009-06-17 22:48:45 +00:00
Adam Nemet
23314e77ec tree.h (STRIP_NOPS, [...]): Use tree_strip_nop_conversions...
* tree.h (STRIP_NOPS, STRIP_SIGN_NOPS,
	STRIP_USELESS_TYPE_CONVERSION): Use tree_strip_nop_conversions,
	tree_strip_sign_nop_conversions and
	tree_ssa_strip_useless_type_conversions rather than stripping
	the operations here.
	(tree_strip_nop_conversions, tree_strip_sign_nop_conversions):
	Declare them.
	* gimple.h (tree_ssa_strip_useless_type_conversions): Declare it.
	* tree-ssa.c (tree_ssa_strip_useless_type_conversions): New function.
	* tree.c (tree_nop_conversion, tree_sign_nop_conversion,
	tree_strip_nop_conversions, tree_strip_sign_nop_conversions): New
	functions.

testsuite/
	* gcc.c-torture/execute/bitfld-5.c: New test.

From-SVN: r148631
2009-06-17 22:11:47 +00:00
Michael Eager
799dbb0f77 Create new constraint "d" for PowerPC FPRs with 64-bit values.
Replace uses of "f" constraint with "d" as needed.

From-SVN: r148630
2009-06-17 21:51:28 +00:00
Ian Lance Taylor
1469de3ce4 profile.c (total_num_never_executed): Don't define.
* profile.c (total_num_never_executed): Don't define.
	(compute_branch_probabilities): Don't count or print
	num_never_executed.
	(init_branch_prob): Don't set total_num_never_executed.
	(end_branch_prob): Don't print total_num_never_executed.

From-SVN: r148628
2009-06-17 20:23:57 +00:00
Ian Lance Taylor
7d8847a4d9 * include/cpplib.h (progname): Don't declare.
From-SVN: r148627
2009-06-17 20:22:02 +00:00
Tom Tromey
6ba49852d8 hook.in: Do not fail when there is no current objfile.
* python/hook.in: Do not fail when there is no current objfile.
	Use os.path.normpath.

From-SVN: r148626
2009-06-17 20:06:27 +00:00
David Daney
2cb0a60da1 jump.c (cleanup_barriers): Handle case of no insns before a barrier.
2009-06-17  David Daney  <ddaney@caviumnetworks.com>

	* jump.c (cleanup_barriers): Handle case of no insns before a
	barrier.

2009-06-17  David Daney  <ddaney@caviumnetworks.com>

	* gcc.dg/builtin-unreachable-3.c: New test.

From-SVN: r148624
2009-06-17 19:27:35 +00:00