Robert Dewar [Sat, 20 Jun 2009 10:45:27 +0000 (10:45 +0000)]
* a-nudira.adb: Minor reformatting
From-SVN: r148746
Arnaud Charlet [Sat, 20 Jun 2009 10:32:58 +0000 (12:32 +0200)]
[multiple changes]
2009-06-20 Ed Schonberg <schonberg@adacore.com>
* exp_ch3.adb (Build_Record_Init_Proc): When copying initial
expressions (possibly from a parent type) indicate that the scope of
the new itypes is the initialization procedure being built.
2009-06-20 Robert Dewar <dewar@adacore.com>
* a-nudira.adb (Fits_In_32_Bits): New name (inverted sense) for
Needs_64, and now computed without anomolies for some dynamic types.
2009-06-20 Thomas Quinot <quinot@adacore.com>
* sem_prag.adb: Minor reformatting
* exp_disp.ads: Minor reformatting
From-SVN: r148745
Ed Schonberg [Sat, 20 Jun 2009 10:21:36 +0000 (10:21 +0000)]
sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a function call is a legal expression to initialize...
2009-06-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Is_OK_For_Limited_Init): An unchecked conversion of a
function call is a legal expression to initialize a limited object.
* exp_ch3.adb: Rename various freeze operations that perform expansion
actions, to prevent confusion with subprograms in the freeze package.
From-SVN: r148744
Arnaud Charlet [Sat, 20 Jun 2009 10:18:00 +0000 (12:18 +0200)]
[multiple changes]
2009-06-20 Ed Schonberg <schonberg@adacore.com>
* sem.adb (Walk_Library_Units): Check instantiations first.
* sem_ch6.adb (Analyze_Subprogram_Declaration): Mark a subprogram as a
private primitive if it is a function with a controlling result that is
a type extension with progenitors.
* exp_ch9.adb (Build_Wrapper_Spec, Build_Wrapper_Body): Handle properly
a primitive operation of a synchronized tagged type that has a
controlling result.
2009-06-20 Thomas Quinot <quinot@adacore.com>
* einfo.ads: Fix typo.
2009-06-20 Ed Falis <falis@adacore.com>
* s-vxwext.ads, s-vxwext-kernel.adb: Complete previous change.
From-SVN: r148743
Richard Guenther [Sat, 20 Jun 2009 09:31:23 +0000 (09:31 +0000)]
re PR tree-optimization/40495 (libgomp.c++/task-4.C)
2009-06-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40495
* tree-ssa-structalias.c (get_constraint_exp_for_temp): Remove.
(new_scalar_tmp_constraint_exp): New function.
(process_constraint): Do not create temporary decls.
(process_all_all_constraints): Likewise.
(handle_const_call): Likewise.
(create_function_info_for): Do not set decl.
From-SVN: r148742
Ian Lance Taylor [Sat, 20 Jun 2009 01:23:50 +0000 (01:23 +0000)]
rs6000.c (rs6000_explicit_options): Make static.
* config/rs6000/rs6000.c (rs6000_explicit_options): Make static.
(rs6000_attribute_table): Make static; move before use.
From-SVN: r148738
GCC Administrator [Sat, 20 Jun 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r148737
Paul Thomas [Fri, 19 Jun 2009 21:58:27 +0000 (21:58 +0000)]
re PR fortran/40440 (Automatic deallocation component of DT function return value)
2009-06-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40440
* trans-expr.c (gfc_conv_procedure_call): Do not deallocate
allocatable components if the argument is a pointer.
2009-06-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/40440
* gfortran.dg/alloc_comp_result_2.f90: New test.
From-SVN: r148731
Eric Botcazou [Fri, 19 Jun 2009 21:33:21 +0000 (21:33 +0000)]
tree.c (substitute_in_expr): Tweak and reformat.
* tree.c (substitute_in_expr) <COMPONENT_REF>: Tweak and reformat.
<tcc_vl_exp>: Call process_call_operands on the new CALL_EXPR.
Propagate the TREE_READONLY flag without overwriting it.
(substitute_placeholder_in_expr) <tcc_vl_exp>: Likewise.
Propagate the TREE_READONLY flag onto the result.
(process_call_operands): Move around. Use correct constant value.
From-SVN: r148729
Ramana Radhakrishnan [Fri, 19 Jun 2009 21:22:44 +0000 (21:22 +0000)]
Fix PR 40482 2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Fix PR 40482
2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40482
* config/arm/arm.c (thumb_shiftable_const): Truncate val to
32 bits.
* config/arm/arm.md: Likewise.
2009-06-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40482
* gcc.target/arm/pr40482.c: New test.
From-SVN: r148728
Ian Lance Taylor [Fri, 19 Jun 2009 20:55:27 +0000 (20:55 +0000)]
tree-cfg.c (gimple_redirect_edge_and_branch): Change ERROR_MARK to GIMPLE_ERROR_MARK.
./: * tree-cfg.c (gimple_redirect_edge_and_branch): Change ERROR_MARK
to GIMPLE_ERROR_MARK.
* c-typeck.c (build_conditional_expr): Add op1_original_type and
op2_original_type parameters. Warn about using different enum
types.
* c-parser.c (c_parser_conditional_expression): Pass original
types to build_conditional_expr.
* c-tree.h (build_conditional_expr): Update declaration.
testsuite/:
* gcc.dg/Wcxx-compat-18.c: New testcase.
From-SVN: r148727
Eric Botcazou [Fri, 19 Jun 2009 18:18:54 +0000 (18:18 +0000)]
trans.c (emit_check): Do not wrap up the result in a SAVE_EXPR.
* gcc-interface/trans.c (emit_check): Do not wrap up the result
in a SAVE_EXPR.
(protect_multiple_eval): Always protect complex expressions.
From-SVN: r148723
Ian Lance Taylor [Fri, 19 Jun 2009 17:56:01 +0000 (17:56 +0000)]
i386.c (ix86_function_specific_save): Test that fields match values...
* config/i386/i386.c (ix86_function_specific_save): Test that
fields match values, rather than testing the values are in a
certain range.
From-SVN: r148721
Paolo Carlini [Fri, 19 Jun 2009 17:49:31 +0000 (17:49 +0000)]
random.h (_Adaptor): Simplify for _DInputType always a floating point type.
2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (_Adaptor): Simplify for _DInputType always
a floating point type.
(uniform_int_distribution<>::uniform_int_distribution(_IntType,
_IntType)): Fix second default argument.
(uniform_int_distribution<>::_M_call): Remove.
(uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Only declare.
* include/bits/random.tcc (uniform_int_distribution<>::_M_call(
_UniformRandomNumberGenerator&, result_type, result_type, true_type):
Remove.
uniform_int_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&): Define here.
(geometric_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&), discrete_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&),
piecewise_constant_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&),
piecewise_linear_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&)): Use double as
the second template argument of _Adaptor.
* testsuite/26_numerics/random/uniform_int_distribution/cons/
default.cc: Adjust.
From-SVN: r148720
Paolo Carlini [Fri, 19 Jun 2009 17:17:14 +0000 (17:17 +0000)]
random.tcc (discrete_distribution<>::param_type:: param_type(size_t, double, double, _Func), [...]): Tidy.
2009-06-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.tcc (discrete_distribution<>::param_type::
param_type(size_t, double, double, _Func),
discrete_distribution<>::operator()(_UniformRandomNumberGenerator&,
const param_type&)): Tidy.
(piecewise_constant_distribution<>::param_type::_M_initialize):
Use reserve, fix.
(piecewise_constant_distribution<>::param_type::
param_type(initializer_list<>, _Func),
piecewise_constant_distribution<>::param_type::
param_type(size_t, _RealType, _RealType, _Func),
piecewise_linear_distribution<>::param_type::
param_type(initializer_list<>, _Func),
piecewise_linear_distribution<>::param_type::
param_type(size_t, _RealType, _RealType, _Func)): Use reserve, tidy.
(piecewise_constant_distribution<>::param_type::
param_type(_InputIteratorB, _InputIteratorB, _InputIteratorW),
piecewise_constant_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&),
piecewise_linear_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)): Fix.
(operator>>(std::basic_istream<>&,
piecewise_constant_distribution<>&),
operator>>(std::basic_istream<>&, piecewise_linear_distribution<>&)):
Use reserve.
* include/bits/random.h: Minor cosmetic changes.
From-SVN: r148719
Richard Guenther [Fri, 19 Jun 2009 16:47:35 +0000 (16:47 +0000)]
tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle ADDR_EXPR pointers.
2009-06-19 Richard Guenther <rguenther@suse.de>
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Handle
ADDR_EXPR pointers.
(ptr_derefs_may_alias_p): Likewise.
(ptr_deref_may_alias_ref_p_1): New function.
(ptr_deref_may_alias_ref_p): Likewise.
(ref_maybe_used_by_call_p_1): Handle builtins that are not
covered by looking at the ESCAPED solution.
(call_may_clobber_ref_p_1): Likewise.
* tree-ssa-structalias.c (get_constraint_for_ptr_offset):
Handle NULL_TREE offset. Do not produce redundant constraints.
(process_all_all_constraints): New helper function.
(do_structure_copy): Use it.
(handle_lhs_call): Likewise.
(find_func_aliases): Handle some builtins with pointer arguments
and/or return values explicitly.
* gcc.c-torture/execute/
20090618-1.c: New testcase.
From-SVN: r148718
Ian Lance Taylor [Fri, 19 Jun 2009 15:57:06 +0000 (15:57 +0000)]
* varasm.c (const_rtx_hash_1): Remove const qualifier from shift.
From-SVN: r148713
Ian Lance Taylor [Fri, 19 Jun 2009 15:53:07 +0000 (15:53 +0000)]
* rtl.h (SUBREG_PROMOTED_UNSIGNED_P): Add cast to int.
From-SVN: r148712
Kaveh R. Ghazi [Fri, 19 Jun 2009 15:33:55 +0000 (15:33 +0000)]
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
Ian Lance Taylor [Fri, 19 Jun 2009 15:32:43 +0000 (15:32 +0000)]
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
Ian Lance Taylor [Fri, 19 Jun 2009 15:29:18 +0000 (15:29 +0000)]
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
Ian Lance Taylor [Fri, 19 Jun 2009 15:25:16 +0000 (15:25 +0000)]
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
Uros Bizjak [Fri, 19 Jun 2009 14:26:24 +0000 (16:26 +0200)]
see.c: Remove for real.
* see.c: Remove for real.
From-SVN: r148707
Uros Bizjak [Fri, 19 Jun 2009 14:22:16 +0000 (16:22 +0200)]
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
Arnaud Charlet [Fri, 19 Jun 2009 12:29:26 +0000 (14:29 +0200)]
Update comments.
From-SVN: r148703
Arnaud Charlet [Fri, 19 Jun 2009 12:29:07 +0000 (14:29 +0200)]
Minor reformatting.
From-SVN: r148702
Arnaud Charlet [Fri, 19 Jun 2009 12:23:38 +0000 (14:23 +0200)]
[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
Ed Falis [Fri, 19 Jun 2009 11:06:38 +0000 (11:06 +0000)]
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
Arnaud Charlet [Fri, 19 Jun 2009 10:59:04 +0000 (12:59 +0200)]
[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
Arnaud Charlet [Fri, 19 Jun 2009 10:54:36 +0000 (12:54 +0200)]
[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
Arnaud Charlet [Fri, 19 Jun 2009 10:49:31 +0000 (12:49 +0200)]
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
Arnaud Charlet [Fri, 19 Jun 2009 10:47:49 +0000 (12:47 +0200)]
[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
Arnaud Charlet [Fri, 19 Jun 2009 10:38:49 +0000 (12:38 +0200)]
[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
Sergey Rybin [Fri, 19 Jun 2009 10:34:46 +0000 (10:34 +0000)]
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
Arnaud Charlet [Fri, 19 Jun 2009 10:32:08 +0000 (12:32 +0200)]
[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
Janus Weil [Fri, 19 Jun 2009 08:11:21 +0000 (10:11 +0200)]
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
Anatoly Sokolov [Fri, 19 Jun 2009 07:35:25 +0000 (11:35 +0400)]
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
GCC Administrator [Fri, 19 Jun 2009 00:16:33 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r148688
Richard Henderson [Thu, 18 Jun 2009 23:27:40 +0000 (16:27 -0700)]
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
H.J. Lu [Thu, 18 Jun 2009 21:12:12 +0000 (21:12 +0000)]
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
Diego Novillo [Thu, 18 Jun 2009 19:48:35 +0000 (15:48 -0400)]
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
Aldy Hernandez [Thu, 18 Jun 2009 18:09:12 +0000 (18:09 +0000)]
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
Sergei Dyshel [Thu, 18 Jun 2009 16:11:18 +0000 (16:11 +0000)]
see removal
From-SVN: r148665
Sergei Dyshel [Thu, 18 Jun 2009 16:08:00 +0000 (16:08 +0000)]
see removal
From-SVN: r148664
Martin Jambor [Thu, 18 Jun 2009 15:38:36 +0000 (17:38 +0200)]
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
Manuel López-Ibáñez [Thu, 18 Jun 2009 15:10:23 +0000 (15:10 +0000)]
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
Olivier Hainque [Thu, 18 Jun 2009 14:13:20 +0000 (14:13 +0000)]
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
Sandra Loosemore [Thu, 18 Jun 2009 12:33:27 +0000 (08:33 -0400)]
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
Sandra Loosemore [Thu, 18 Jun 2009 12:30:19 +0000 (08:30 -0400)]
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
Paul Brook [Thu, 18 Jun 2009 12:26:37 +0000 (12:26 +0000)]
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
Sandra Loosemore [Thu, 18 Jun 2009 12:24:10 +0000 (08:24 -0400)]
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
Uros Bizjak [Thu, 18 Jun 2009 11:35:38 +0000 (13:35 +0200)]
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
Janus Weil [Thu, 18 Jun 2009 08:09:40 +0000 (10:09 +0200)]
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
Uros Bizjak [Thu, 18 Jun 2009 07:58:17 +0000 (09:58 +0200)]
ChangeLog: Various fixes.
* ChangeLog: Various fixes.
* testsuite/ChangeLog: Ditto.
From-SVN: r148651
Olivier Hainque [Thu, 18 Jun 2009 07:45:09 +0000 (07:45 +0000)]
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
Benjamin Kosnik [Thu, 18 Jun 2009 01:40:44 +0000 (01:40 +0000)]
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
H.J. Lu [Thu, 18 Jun 2009 01:06:55 +0000 (01:06 +0000)]
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
Richard Henderson [Thu, 18 Jun 2009 00:30:48 +0000 (17:30 -0700)]
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
Cary Coutant [Thu, 18 Jun 2009 00:20:31 +0000 (17:20 -0700)]
Quick fix to last ChangeLog entry.
From-SVN: r148641
GCC Administrator [Thu, 18 Jun 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r148640
Cary Coutant [Wed, 17 Jun 2009 23:54:40 +0000 (23:54 +0000)]
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
Ian Lance Taylor [Wed, 17 Jun 2009 22:48:45 +0000 (22:48 +0000)]
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
Adam Nemet [Wed, 17 Jun 2009 22:11:47 +0000 (22:11 +0000)]
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
Michael Eager [Wed, 17 Jun 2009 21:51:28 +0000 (21:51 +0000)]
Create new constraint "d" for PowerPC FPRs with 64-bit values.
Replace uses of "f" constraint with "d" as needed.
From-SVN: r148630
Ian Lance Taylor [Wed, 17 Jun 2009 20:23:57 +0000 (20:23 +0000)]
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
Ian Lance Taylor [Wed, 17 Jun 2009 20:22:02 +0000 (20:22 +0000)]
* include/cpplib.h (progname): Don't declare.
From-SVN: r148627
Tom Tromey [Wed, 17 Jun 2009 20:06:27 +0000 (20:06 +0000)]
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
David Daney [Wed, 17 Jun 2009 19:27:35 +0000 (19:27 +0000)]
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
David Daney [Wed, 17 Jun 2009 19:14:56 +0000 (19:14 +0000)]
builtin-unreachable.c: New test.
2009-06-17 David Daney <ddaney@caviumnetworks.com>
* gcc.target/i386/builtin-unreachable.c: New test.
From-SVN: r148622
David Edelsohn [Wed, 17 Jun 2009 18:18:34 +0000 (18:18 +0000)]
dfp.md (nabsdd2_fpr): Correct mode.
* config/rs6000/dfp.md (nabsdd2_fpr): Correct mode.
(nabstd2_fpr): Same.
From-SVN: r148621
Steve Ellcey [Wed, 17 Jun 2009 15:37:20 +0000 (15:37 +0000)]
expr.c (expand_assignment): Change complex type check.
2009-06-17 Steve Ellcey <sje@cup.hp.com>
* expr.c (expand_assignment): Change complex type check.
From-SVN: r148614
Basile Starynkevitch [Wed, 17 Jun 2009 13:36:47 +0000 (13:36 +0000)]
plugins.texi (Building GCC plugins): Added new section.
2009-06-17 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/doc/plugins.texi (Building GCC plugins): Added new section.
From-SVN: r148612
Ian Lance Taylor [Wed, 17 Jun 2009 13:21:23 +0000 (13:21 +0000)]
c-pch.c (get_ident): Don't set size of templ array.
./: * c-pch.c (get_ident): Don't set size of templ array.
(pch_init): Don't set size of partial_pch array.
* c-typeck.c (digest_init): If -Wc++-compat, warn about using a
string constant to intialize an array whose size is the length of
the string.
testsuite/:
* gcc.dg/Wcxx-compat-14.c: New testcase.
From-SVN: r148611
Aldy Hernandez [Wed, 17 Jun 2009 12:59:39 +0000 (12:59 +0000)]
* gcc.dg/func-ptr-conv-1.c: Update column info.
From-SVN: r148609
Ian Lance Taylor [Wed, 17 Jun 2009 12:53:01 +0000 (12:53 +0000)]
* decl.c (build_struct): Rewrite loop over constructor elements.
From-SVN: r148608
Richard Guenther [Wed, 17 Jun 2009 12:30:54 +0000 (12:30 +0000)]
re PR middle-end/40404 (Comparison involving unsigned int:17 bitfield seems wrong)
2009-06-17 Richard Guenther <rguenther@suse.de>
PR middle-end/40404
* gcc.c-torture/execute/pr40404.c: New testcase.
From-SVN: r148606
Richard Guenther [Wed, 17 Jun 2009 10:29:22 +0000 (10:29 +0000)]
re PR c++/40389 (optimizer bug (possibly))
2009-06-17 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40389
* tree-ssa-structalias.c (handle_rhs_call): Restrict NRV case
to addressable types.
* gimple.c (walk_stmt_load_store_addr_ops): Likewise.
From-SVN: r148597
Richard Guenther [Wed, 17 Jun 2009 10:26:24 +0000 (10:26 +0000)]
re PR middle-end/40460 (Enormous memory usage during compilation with -O2 or -O3 optimizations.)
2009-06-17 Richard Guenther <rguenther@suse.de>
PR middle-end/40460
* tree-chrec.h (build_polynomial_chrec): If we cannot determine
if there is no evolution of left in the loop bail out.
* tree-chrec.c (chrec_fold_multiply_poly_poly): CSE one
chrec_fold_multiply.
* g++.dg/torture/pr40460.C: New testcase.
From-SVN: r148593
Robert Dewar [Wed, 17 Jun 2009 08:58:35 +0000 (08:58 +0000)]
Relax constraints on Machine_Attribute argument types:
* sem_prag.adb (Check_Arg_Is_Static_Expression): Allow for
missing type.
(Analyze_Attribute, case Machine_Attribute): Allow any type for
arg 3.
* gcc-interface/decl.c (prepend_attributes): Accept static
expressions of any type as attribute arguments, not only string
literals.
* gnat_rm.texi (pragma Machine_Attribute section): Adjust to
reflect the relaxation of the restriction on the Info argument type.
Co-Authored-By: Olivier Hainque <hainque@adacore.com>
From-SVN: r148589
J"orn Rennecke [Wed, 17 Jun 2009 04:27:29 +0000 (04:27 +0000)]
re PR target/39254 (gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9)
PR target/39254
* config/rs6000/rs6000.c (rs6000_emit_move): Don't emit a USE
for the symbol ref of a constant that is the source of a move
- nor for any other not-obvious-label-ref constants.
Co-Authored-By: Janis Johnson <janis187@us.ibm.com>
From-SVN: r148568
Olatunji Ruwase [Wed, 17 Jun 2009 02:18:55 +0000 (02:18 +0000)]
[multiple changes]
2009-06-16 Olatunji Ruwase <tjruwase@google.com>
* plugin.c(position_pass): Skip newly inserted pass during list
traversal to avoid repeated insertion.
2009-06-05 Olatunji Ruwase <tjruwase@google.com>
* gcc.dg/plugin/one_time_plugin.c: New test.
* gcc.dg/plugin/one_time-test-1.c: New test.
* gcc.dg/plugin/plugin.exp: Added one_time_plugin.c test.
From-SVN: r148566
GCC Administrator [Wed, 17 Jun 2009 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r148565
Ian Lance Taylor [Wed, 17 Jun 2009 00:10:23 +0000 (00:10 +0000)]
vec.h (VEC_stack_alloc): Define different version if GATHER_STATISTICS is defined...
* vec.h (VEC_stack_alloc): Define different version if
GATHER_STATISTICS is defined, to accept and ignore MEM_STAT.
(DEF_VEC_ALLOC_FUNC_P_STACK): Remove MEM_STAT_DECL.
(DEF_VEC_ALLOC_FUNC_O_STACK): Likewise.
(DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
From-SVN: r148562
Jonathan Wakely [Tue, 16 Jun 2009 21:24:41 +0000 (21:24 +0000)]
exception_ptr.h (exception_ptr::swap(exception_ptr&&)): Remove.
2009-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception_ptr.h (exception_ptr::swap(exception_ptr&&)):
Remove.
(exception_ptr::operator=(exception_ptr&&)): Cast source to
rvalue-reference so that move constructor is called.
* testsuite/18_support/exception_ptr/move.cc: New.
From-SVN: r148555
H.J. Lu [Tue, 16 Jun 2009 21:17:31 +0000 (21:17 +0000)]
config.gcc (extra_headers): Add ia32intrin.h for x86.
2009-06-16 H.J. Lu <hongjiu.lu@intel.com>
* config.gcc (extra_headers): Add ia32intrin.h for x86.
* config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_BSRSI,
IX86_BUILTIN_BSRDI. IX86_BUILTIN_RDPMC, IX86_BUILTIN_RDTSC.
IX86_BUILTIN_RDTSCP. IX86_BUILTIN_ROLQI, IX86_BUILTIN_ROLHI,
IX86_BUILTIN_RORQI and IX86_BUILTIN_RORHI.
(ix86_special_builtin_type): Add UINT64_FTYPE_VOID,
UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT,
INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and
UINT8_FTYPE_UINT8_INT
(bdesc_special_args): Add __builtin_ia32_rdtsc and
__builtin_ia32_rdtscp.
(bdesc_args): Add __builtin_ia32_bsrsi, __builtin_ia32_bsrdi,
__builtin_ia32_rolqi, __builtin_ia32_rolhi, __builtin_ia32_rorqi
and __builtin_ia32_rorhi,
(ix86_init_mmx_sse_builtins): Handle UINT64_FTYPE_VOID,
UINT64_FTYPE_PINT, INT_FTYPE_INT, UINT64_FTYPE_INT,
INT64_FTYPE_INT64, UINT16_FTYPE_UINT16_INT and
UINT8_FTYPE_UINT8_INT.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_special_args_builtin): Likewise.
* config/i386/i386.md (UNSPECV_RDTSCP): New.
(UNSPECV_RDTSC): Likewise.
(UNSPECV_RDPMC): Likewise.
(*bsr): Removed to ...
(bsr): This
(*bsr_rex64): Removed to ...
(bsr_rex64): This.
(rdpmc): New.
(*rdpmc): Likewise.
(*rdpmc_rex64): Likewise.
(rdtsc): Likewise.
(*rdtsc): Likewise.
(*rdtsc_rex64): Likewise.
(rdtscp): Likewise.
(*rdtscp): Likewise.
(*rdtscp_rex64): Likewise.
* config/i386/ia32intrin.h: New.
* config/i386/x86intrin.h: Include <ia32intrin.h>.
From-SVN: r148554
Jonathan Wakely [Tue, 16 Jun 2009 20:34:43 +0000 (20:34 +0000)]
thread (~thread(), [...]): Call terminate if joinable.
2009-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread (~thread(), operator=(thread&&)): Call terminate
if joinable.
From-SVN: r148552
Ian Lance Taylor [Tue, 16 Jun 2009 20:25:30 +0000 (20:25 +0000)]
ira-build.c (copy_info_to_removed_store_destinations): Initialize parent_a.
* ira-build.c (copy_info_to_removed_store_destinations):
Initialize parent_a.
From-SVN: r148551
Ian Lance Taylor [Tue, 16 Jun 2009 20:20:21 +0000 (20:20 +0000)]
* c-decl.c (grokdeclarator): Change size_varies to bool.
From-SVN: r148550
Ian Lance Taylor [Tue, 16 Jun 2009 19:09:35 +0000 (19:09 +0000)]
sel-sched.c: Make forward declarations of move_op_hooks and fur_hooks explicitly extern.
* sel-sched.c: Make forward declarations of move_op_hooks and
fur_hooks explicitly extern.
From-SVN: r148549
Ian Lance Taylor [Tue, 16 Jun 2009 19:01:18 +0000 (19:01 +0000)]
df-problems.c (df_byte_lr_alloc): Don't set problem_data to itself.
* df-problems.c (df_byte_lr_alloc): Don't set problem_data to
itself.
* vec.c (vec_gc_o_reserve_1): Don't set alloc to itself.
From-SVN: r148548
Ian Lance Taylor [Tue, 16 Jun 2009 18:55:20 +0000 (18:55 +0000)]
resource.c (mark_referenced_resources): Change include_delayed_effects parameter to bool.
* resource.c (mark_referenced_resources): Change
include_delayed_effects parameter to bool. Change all callers.
(mark_end_of_function_resources): Likewise.
* reorg.c (insn_references_resource_p): Likewise.
(insn_sets_resource_p): Likewise.
* resource.h (mark_referenced_resources): Update declaration.
(mark_end_of_function_resources): Update declaration.
From-SVN: r148547
David Edelsohn [Tue, 16 Jun 2009 18:51:54 +0000 (18:51 +0000)]
aix.h (LIBSTDCXX_STATIC): Remove -lstdc++.
* config/rs6000/aix.h (LIBSTDCXX_STATIC): Remove -lstdc++.
cp/
* g++-spec.c (LIBSTDCXX_STATIC): Default to NULL.
(lang_specific_driver): Always allocate extra argument.
Add LIBSTDCXX_STATIC to arglist if defined and linking
statically.
From-SVN: r148546
David Edelsohn [Tue, 16 Jun 2009 18:46:47 +0000 (18:46 +0000)]
install.texi (*-*-aix): Update explanation of XLC bootstrap.
* doc/install.texi (*-*-aix): Update explanation of XLC bootstrap.
GCC can bootstrap on AIX with GNU Binutils 2.20.
From-SVN: r148545
Ian Lance Taylor [Tue, 16 Jun 2009 17:56:59 +0000 (17:56 +0000)]
Make-lang.in (cp/class.o): Depend upon gt-cp-class.h.
* Make-lang.in (cp/class.o): Depend upon gt-cp-class.h.
(cp/semantics.o): Depend upon gt-cp-semantics.h.
From-SVN: r148544
Wim Lewis [Tue, 16 Jun 2009 17:55:39 +0000 (17:55 +0000)]
ffi.c: Avoid clobbering cr3 and cr4, which are supposed to be callee-saved.
2009-06-16 Wim Lewis <wiml@hhhh.org>
* src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
supposed to be callee-saved.
* src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
return buffer for odd-size structs.
From-SVN: r148543
Andreas Tobler [Tue, 16 Jun 2009 17:28:29 +0000 (17:28 +0000)]
re PR libffi/40444 (libffi badly broken with -m64 by some revision between 148383 and 148472.)
2009-06-16 Andreas Tobler <a.tobler@schweiz.org>
PR libffi/40444
* testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
allow_stack_execute for Darwin.
From-SVN: r148542
Ian Lance Taylor [Tue, 16 Jun 2009 16:59:03 +0000 (16:59 +0000)]
* Makefile.in (tree-vect-stmts.o): Depend upon $(TOPLEV_H).
From-SVN: r148541
Ian Lance Taylor [Tue, 16 Jun 2009 16:55:41 +0000 (16:55 +0000)]
toplev.h (floor_log2): If GCC_VERSION >= 3004, declare as static inline, not extern inline.
* toplev.h (floor_log2): If GCC_VERSION >= 3004, declare as static
inline, not extern inline.
(exact_log2): Likewise.
* toplev.c (floor_log2): Only define if GCC_VERSION < 3004. Don't
test CLZ_HWI.
(exact_log2): Likewise, but don't test CTZ_HWI.
From-SVN: r148540
Ian Lance Taylor [Tue, 16 Jun 2009 16:46:31 +0000 (16:46 +0000)]
bitmap.c (bitmap_clear): Don't declare as inline.
* bitmap.c (bitmap_clear): Don't declare as inline.
* gimple.c (gimplify_assign): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Likewise.
* haifa-sched.c (insn_cost): Don't declare with HAIFA_INLINE.
(sched_scan_info): Remove duplicate definition.
From-SVN: r148539
Andrew Haley [Tue, 16 Jun 2009 16:14:54 +0000 (16:14 +0000)]
configure.ac (TARGETDIR): Add missing blank lines.
2009-06-16 Andrew Haley <aph@redhat.com>
* configure.ac (TARGETDIR): Add missing blank lines.
* configure: Regenerate.
From-SVN: r148538