David Krauss [Wed, 22 Sep 2010 19:40:43 +0000 (19:40 +0000)]
re PR libstdc++/45628 (std::fstream::tellg invalidates I/O buffer)
2010-09-22 David Krauss <potswa@mac.com>
PR libstdc++/45628
* include/bits/fstream.tcc (basic_filebuf::underflow): Add state
transition to avoid modality requiring seekoff(0,ios::cur).
(basic_filebuf::pbackfail): Likewise.
(basic_filebuf::overflow): Likewise.
(basic_filebuf::_M_seek): Avoid minor unnecessary conversion.
(basic_filebuf::seekoff): Remove code to _M_get_ext_pos; make
(0, ios::cur) a special case preserving buffer contents.
(basic_filebuf::_M_get_ext_pos): New function to obtain status
about codecvt extern_t buffer for overflow and seekoff.
* include/std/fstream (basic_filebuf::_M_get_ext_pos): Likewise.
* config/abi/pre/gnu.ver: Export new symbols.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc: New,
verifies that seekoff(0, ios::cur) preserves buffers.
* testsuite/27_io/basic_filebuf/seekoff/char/45628-2.cc: Likewise.
for codecvt case. More lenient as it may still flush put area.
* testsuite/27_io/basic_filebuf/seekoff/char/4.cc: Modify to
check that seekoff is not required between read and write.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Likewise.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Remove.
* testsuite/27_io/basic_filebuf/sync/wchar_t/1.cc: Likewise.
* testsuite/util/testsuite_character.h (codecvt::do_length): Comply
with 22.2.1.5.2/10 "Returns ... the LARGEST value in the range..."
From-SVN: r164529
Paolo Carlini [Wed, 22 Sep 2010 17:50:36 +0000 (17:50 +0000)]
functional_hash.h (__hash_base): Add.
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/functional_hash.h (__hash_base): Add.
(hash): Derive from __hash_base instead.
* include/debug/bitset (hash): Likewise.
* include/debug/vector (hash): Likewise.
* include/std/system_error (hash): Likewise.
* include/std/thread (hash): Likewise.
* include/std/bitset (hash): Likewise.
* include/profile/bitset (hash): Likewise.
* include/profile/vector (hash): Likewise.
* include/bits/basic_string.h (hash): Likewise.
* include/bits/stl_bvector.h (hash): Likewise.
* include/std/typeindex (hash): Do not derive from unary_function,
add result_type and argument_type typedefs; trim includes.
From-SVN: r164528
Marcus Shawcroft [Wed, 22 Sep 2010 16:31:19 +0000 (16:31 +0000)]
scanasm.exp (dg-function-on-line): Permit .fnstart to appear in the regexp pattern between the expected label and...
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* lib/scanasm.exp(dg-function-on-line): Permit .fnstart to appear in
the regexp pattern between the expected label and location string.
From-SVN: r164527
Richard Guenther [Wed, 22 Sep 2010 14:44:13 +0000 (14:44 +0000)]
tree-inline.c (optimize_inline_calls): Schedule cleanups only if we inlined something.
2010-09-22 Richard Guenther <rguenther@suse.de>
* tree-inline.c (optimize_inline_calls): Schedule cleanups
only if we inlined something. Block compaction and conditional
folding are done by cfg cleanup. Schedule update-address-taken.
(tree_function_versioning): Remove redundant call to number_blocks.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Conditional
folding is done by cfg cleanup.
* passes.c (init_optimization_passes): Remove update-address-taken
pass after IPA inlining.
From-SVN: r164525
Chung-Lin Tang [Wed, 22 Sep 2010 14:38:08 +0000 (14:38 +0000)]
postreload.c (move2add_note_store): Add reg_symbol_ref[] checks to update conditions.
* postreload.c (move2add_note_store): Add reg_symbol_ref[] checks
to update conditions. Fix reg_mode[] check.
From-SVN: r164524
Hariharan Sandanagobalane [Wed, 22 Sep 2010 14:07:11 +0000 (14:07 +0000)]
picochip.md (movhicc): Use expand to check whether movhicc is available and split it after reload.
* config/picochip/picochip.md (movhicc): Use expand to check whether
movhicc is available and split it after reload.
From-SVN: r164523
Richard Guenther [Wed, 22 Sep 2010 12:15:56 +0000 (12:15 +0000)]
tree-ssanames.c (release_dead_ssa_names): Do not remove callee edges here.
2010-09-22 Richard Guenther <rguenther@suse.de>
* tree-ssanames.c (release_dead_ssa_names): Do not remove
callee edges here.
* passes.c (init_optimization_passes): Remove early CFG cleanup.
* tree-optimize.c (execute_cleanup_cfg_pre_ipa): Remove.
(pass_cleanup_cfg): Likewise.
(execute_fixup_cfg): Cleanup.
* tree-pass.h (pass_cleanup_cfg): Remove.
From-SVN: r164522
Paolo Carlini [Wed, 22 Sep 2010 12:04:08 +0000 (12:04 +0000)]
typeindex: New.
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/typeindex: New.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* include/precompiled/stdc++.h: Add.
* testsuite/20_util/typeindex/comparison_operators.cc: New.
* testsuite/20_util/typeindex/hash.cc: Likewise.
* testsuite/20_util/typeindex/hash_code.cc: Likewise.
* testsuite/20_util/typeindex/name.cc: Likewise.
* testsuite/18_support/type_info/hash_code.cc: Tweak.
From-SVN: r164521
Marcus Shawcroft [Wed, 22 Sep 2010 10:20:39 +0000 (10:20 +0000)]
pr28706.c: Typo fix to dg-require-effective-target lto.
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* gcc.dg/pr28706.c: Typo fix to dg-require-effective-target lto.
From-SVN: r164520
Marcus Shawcroft [Wed, 22 Sep 2010 10:10:23 +0000 (10:10 +0000)]
pr41893-1.c: Typo fix to dg-require-effective-target lto.
2010-09-22 Marcus Shawcroft <marcus.shawcroft@arm.com>
* gcc.dg/debug/pr41893-1.c: Typo fix to dg-require-effective-target lto.
* gcc.dg/pr27898.c: Likewise.
* gcc.dg/pr28712.c: Likewise.
* gcc.dg/pr30762-1.c: Likewise.
* gcc.dg/pr31529-1.c: Likewise.
* gcc.dg/pr34457-1.c: Likewise.
* gcc.dg/pr34668-1.c: Likewise.
* gcc.dg/pr34989-1.c: Likewise.
* gcc.dg/pr43557-1.c: Likewise.
From-SVN: r164519
Tristan Gingold [Wed, 22 Sep 2010 09:26:03 +0000 (09:26 +0000)]
cplus-dem.c (ada_demangle): Add comments.
2010-09-22 Tristan Gingold <gingold@adacore.com>
* cplus-dem.c (ada_demangle): Add comments.
Handle stream and controlled type operations.
Decoding of some uppercase letters moved before separators.
* testsuite/demangle-expected: Add tests.
From-SVN: r164518
Martin Jambor [Wed, 22 Sep 2010 09:02:48 +0000 (11:02 +0200)]
gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold builtins if it is true.
2010-09-22 Martin Jambor <mjambor@suse.cz>
* gimple-fold.c (fold_gimple_call): New parameter inplace, do not fold
builtins if it is true.
(fold_stmt_1): Call, fold_gimple_call always, pass inplace as a
parameter.
From-SVN: r164517
Jakub Jelinek [Wed, 22 Sep 2010 08:57:38 +0000 (10:57 +0200)]
re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
* gcc.target/i386/pr45739.c: Tighten up scan-assembler-not
regexps.
From-SVN: r164516
Martin Jambor [Wed, 22 Sep 2010 08:48:17 +0000 (10:48 +0200)]
tree-sra.c (struct access): New field grp_no_warning.
2010-09-22 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (struct access): New field grp_no_warning.
(create_access_replacement): Set TREE_NO_WARNING according to
grp_no_warning.
(create_artificial_child_access): Use build_ref_for_model and set
grp_no_warning if build_user_friendly_ref_for_offset fails.
(propagate_subaccesses_across_link): Likewise.
From-SVN: r164515
Eric Botcazou [Wed, 22 Sep 2010 08:31:14 +0000 (08:31 +0000)]
re PR target/35664 (unable to find a register to spill in class 'FP_REGS')
PR target/35664
* config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
('f'): Likewise.
From-SVN: r164512
Tristan Gingold [Wed, 22 Sep 2010 08:21:14 +0000 (08:21 +0000)]
alpha.c (alpha_use_linkage): Initialize target field.
2010-09-22 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_use_linkage): Initialize target field.
From-SVN: r164511
Paolo Carlini [Wed, 22 Sep 2010 08:19:08 +0000 (08:19 +0000)]
hash_bytes.cc: Move...
2010-09-22 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash_bytes.cc: Move...
* libsupc++/hash_bytes.cc: ... here.
* src/Makefile.am: Adjust.
* libsupc++/Makefile.am: Likewise.
* config/abi/pre/gnu.ver: Likewise.
* libsupc++/typeinfo (type_info::hash_code): Add in C++0x mode.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.am: Likewise.
* testsuite/18_support/type_info/hash_code.cc: New.
From-SVN: r164510
Uros Bizjak [Wed, 22 Sep 2010 07:41:13 +0000 (09:41 +0200)]
i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
* config/i386/i386.h (MAX_STRINGOP_ALGS): Fix typo in the name.
* config/i386/i386.c (decide_alg): Update for rename.
From-SVN: r164509
Nicola Pero [Wed, 22 Sep 2010 07:20:32 +0000 (07:20 +0000)]
Fixed ChangeLog entry for a previous commit of mine
From-SVN: r164508
Jerry DeLisle [Wed, 22 Sep 2010 03:10:24 +0000 (03:10 +0000)]
re PR libfortran/45723 (opening /dev/null for appending writes)
2010-09-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45723
* io/open.c (new_unit): On POSITION_APPEND don't seek if file length is
zero.
From-SVN: r164507
GCC Administrator [Wed, 22 Sep 2010 00:17:33 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r164506
Jason Merrill [Tue, 21 Sep 2010 23:40:30 +0000 (19:40 -0400)]
mangle.c (write_expression): Only do -fabi-version=1 special handling if we know the member.
* mangle.c (write_expression) [SCOPE_REF]: Only do -fabi-version=1
special handling if we know the member.
From-SVN: r164502
Jakub Jelinek [Tue, 21 Sep 2010 23:33:01 +0000 (01:33 +0200)]
re PR rtl-optimization/45739 (static evaluation of SSE intrinsics (pxor))
PR rtl-optimization/45739
* simplify-rtx.c (simplify_binary_operation_1): Optimize even
vector mode | CONST0_RTX (mode) and ^ CONST0_RTX (mode).
* gcc.target/i386/pr45739.c: New test.
From-SVN: r164501
Nicola Pero [Tue, 21 Sep 2010 22:27:43 +0000 (22:27 +0000)]
Fixed ChangeLog entries for my last commit
From-SVN: r164499
Nicola Pero [Tue, 21 Sep 2010 20:47:04 +0000 (20:47 +0000)]
re PR objc/23710 (objc front-end should not "abort" after erroring out about method definition not in class context)
PR objc/23710
In gcc/:
* c-family/c-common.h (objc_start_method_definition): Return bool
instead of void.
* c-family/stub-objc.c (objc_start_method_definition): Return bool
instead of void.
* c-parser.c (c_parser_objc_method_definition): Check the return
value of objc_start_method_definition and if false is returned,
parse the method definition but emit no code.
In gcc/objc/:
* objc-act.c (objc_start_method_definition): Do not abort upon a
'method definition not in @implementation context' error. Return
'false' instead.
In gcc/testsuite/:
* objc.dg/invalid-method-1.m: New.
From-SVN: r164497
Jason Blevins [Tue, 21 Sep 2010 19:12:44 +0000 (19:12 +0000)]
intrinsics.texi (HYPOT, [...]): Correct spelling.
2010-09-21 Jason Blevins <jrblevin@sdf.org>
* intrinsics.texi (HYPOT, IMAGE_INDEX, BESSEL_JN, BESSEL_YN,
execute_command_line, IEOR, IOR, NORM2, NOT, NULL, PARITY):
Correct spelling.
From-SVN: r164496
Mikael Morin [Tue, 21 Sep 2010 19:04:09 +0000 (19:04 +0000)]
re PR fortran/45648 (Unnecessary temporary for transpose calls as actual argument.)
2010-09-21 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Calculate dim out of n and
info->dim.
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Unset full if we are
accessing dimensions in reversed order.
PR fortran/45648
* trans-array.c (gfc_conv_expr_descriptor): Special case noncopying
intrinsic function call.
* trans-array.c (gfc_conv_expr_descriptor): Remove ss lookup.
Update asserts accordingly.
PR fortran/45648
* trans.h (gfc_se): New field force_tmp.
* trans-expr.c (gfc_conv_procedure_call): Check for argument alias
and set parmse.force_tmp if some alias is found.
* trans-array.c (gfc_conv_expr_descriptor): Force a temporary creation
if se->force_tmp is set.
2010-09-21 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45648
* gfortran.dg/inline_transpose_1.f90: Update temporary's locations
and counts. Add non-elemental function call check.
PR fortran/45648
* gfortran.dg/inline_transpose_1.f90: Add function calls with aliasing
arguments checks. Update temporary counts.
* gfortran.dg/transpose_optimization_1.f90: New.
From-SVN: r164494
Anatoly Sokolov [Tue, 21 Sep 2010 19:03:25 +0000 (23:03 +0400)]
rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
* config/rs6000/rs6000.h (OUTPUT_ADDR_CONST_EXTRA): Remove macros.
* config/rs6000/rs6000-protos.h (rs6000_output_addr_const_extra):
Remove.
* config/rs6000/rs6000.c (rs6000_output_addr_const_extra): Make
static.
(TTARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
From-SVN: r164493
Kai Tietz [Tue, 21 Sep 2010 19:03:11 +0000 (21:03 +0200)]
Remove strayed semicolon.
From-SVN: r164492
Nicola Pero [Tue, 21 Sep 2010 18:51:34 +0000 (18:51 +0000)]
re PR objc/25965 (Allows duplicate member names in objc subclasses)
PR objc/25965
In gcc/objc/:
* objc-act.c (objc_get_interface_ivars): New function.
(objc_collecting_ivars): New variable.
(continue_class): Set and reset objc_collecting_ivars for context.
In gcc/:
* c-decl.c (detect_field_duplicates): If compiling Objective-C,
call objc_get_interface_ivars ().
* c-family/c-common.h (objc_get_interface_ivars): New declaration.
* c-family/stub-objc.c (objc_get_interface_ivars): New stub.
In gcc/objcp/:
* objcp-decl.c (objcp_finish_struct): Call
objc_get_interface_ivars() and check for duplicate ivars.
In gcc/testsuite/:
Merge from 'apple/trunk' branch on FSF servers.
2005-10-11 Fariborz Jahanian <fjahanian@apple.com>
Radar
4291785
objc.dg/naming-4.m: New
objc.dg/naming-5.m: New
obj-c++.dg/naming-1.mm: New
obj-c++.dg/naming-2.mm: New
From-SVN: r164491
Kai Tietz [Tue, 21 Sep 2010 17:58:32 +0000 (17:58 +0000)]
re PR target/45694 ([MinGW64] fortran host associated variables+optimization==failure?)
2010-09-21 Kai Tietz <kai.tietz@onevision.com>
PR target/45694
* config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
static chain-register is used for 64-bit.
From-SVN: r164489
Richard Guenther [Tue, 21 Sep 2010 15:21:48 +0000 (15:21 +0000)]
dwarf2out.c (is_cu_die): New function.
2010-09-21 Richard Guenther <rguenther@suse.de>
* dwarf2out.c (is_cu_die): New function.
(add_pubtype): Use it.
(gen_subprogram_die): Likewise.
(gen_struct_or_union_type_die): Likewise.
(dwarf2out_finish): Likewise.
(comp_unit_die): Rename to ...
(single_comp_unit_die): ... this.
(comp_unit_die): New function lazily constructing and
returning single_comp_unit_die.
(is_cxx, is_fortran, is_ada, debug_dwarf, break_out_comdat_types,
base_type_die, subrange_type_die, modified_type_die,
lower_bound_default, add_bound_info, add_prototyped_attribute,
dwarf2out_vms_debug_main_pointer, scope_die_for, retry_incomplete_types,
dwarf2out_abstract_function, gen_type_die_with_usage, get_context_die,
force_decl_die, gen_namespace_die, dwarf2out_decl,
dwarf2out_start_source_file, dwarf2out_end_source_file,
prune_unused_types, dwarf2out_finish): Use it.
(gen_compile_unit_die): For GNU GIMPLE derive DW_AT_language from
the global list of translation-unit decls.
(dwarf2out_init): Do not create single_comp_unit_die here.
(force_decl_die): Handle TRANSLATION_UNIT_DECL.
From-SVN: r164484
Richard Guenther [Tue, 21 Sep 2010 15:19:02 +0000 (15:19 +0000)]
dwarf2out.c (dwarf2out_decl): Do not always generate a DIE for bool for C++.
2010-09-21 Richard Guenther <rguenther@suse.de>
* dwarf2out.c (dwarf2out_decl): Do not always generate a DIE
for bool for C++.
From-SVN: r164483
Iain Sandoe [Tue, 21 Sep 2010 14:43:59 +0000 (14:43 +0000)]
Makefile.in (libgcc-extra-parts): Check for static archives and invoke ranlib after installing them.
* Makefile.in (libgcc-extra-parts): Check for static archives and
invoke ranlib after installing them.
(gcc-extra-parts): Likewise.
(install-leaf): Likewise.
From-SVN: r164482
Iain Sandoe [Tue, 21 Sep 2010 14:32:36 +0000 (14:32 +0000)]
configure.ac (enable-lto): Add Darwin to the list of supported lto targets and amend comment.
* configure.ac (enable-lto): Add Darwin to the list of supported lto
targets and amend comment.
* configure: Regenerate.
From-SVN: r164481
Jonathan Wakely [Tue, 21 Sep 2010 14:12:58 +0000 (15:12 +0100)]
re PR c++/45645 (pr44972.C fails with error: ‘__assert_fail’ was not declared in this scope)
2010-09-21 Jonathan Wakely <redi@gcc.gnu.org>
Jack Howarth <howarth@bromo.med.uc.edu>
PR c++/45645
* g++.dg/torture/pr44972.C: Use portable assert().
Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>
From-SVN: r164479
Jack Howarth [Tue, 21 Sep 2010 14:01:43 +0000 (14:01 +0000)]
configure.ac: Set LIBMATHSPEC to -lm except on darwin.
2010-09-21 Jack Howarth <howarth@bromo.med.uc.edu>
* libjava/configure.ac: Set LIBMATHSPEC to -lm except on darwin.
* libjava/libgcj.spec.in: Use LIBMATHSPEC.
* libjava/configure: Regenerate.
From-SVN: r164478
Bernd Schmidt [Tue, 21 Sep 2010 13:11:03 +0000 (13:11 +0000)]
iterators.md (qhs_extenddi_op): New mode_attr.
* config/arm/iterators.md (qhs_extenddi_op): New mode_attr.
(qhs_extenddi_cstr): Likewise.
* config/arm/arm.md (zero_extend<mode>di2, extend<mode>di2): Use
them for the source operand.
From-SVN: r164477
Uros Bizjak [Tue, 21 Sep 2010 11:42:06 +0000 (13:42 +0200)]
i386.c (ix86_split_ashl): Rename single_width variable to half_width.
* config/i386/i386.c (ix86_split_ashl): Rename single_width variable
to half_width. Use GET_MODE_BITSIZE to calculate mode size.
(ix86_split_ashr): Ditto.
(ix86_split_lshr): Ditto.
From-SVN: r164476
Richard Guenther [Tue, 21 Sep 2010 09:52:00 +0000 (09:52 +0000)]
re PR tree-optimization/45580 (Building WebKit fails with compiler catching SIGSEGV in gimple_fold_obj_type_ref_known_binfo())
2010-09-21 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45580
* tree-ssa-propagate.c (substitute_and_fold): Always replace
regular uses.
* gimple-fold.c (gimple_fold_obj_type_ref): For a BINFO without
virtuals fold the call into a regular indirect one.
* g++.dg/torture/pr45580.C: New testcase.
From-SVN: r164474
GCC Administrator [Tue, 21 Sep 2010 00:19:32 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r164472
Uros Bizjak [Mon, 20 Sep 2010 22:15:17 +0000 (00:15 +0200)]
gcc-dg.exp (clanup-stack-usage): Really remove .su files.
* lib/gcc-dg.exp (clanup-stack-usage): Really remove .su files.
From-SVN: r164466
Janus Weil [Mon, 20 Sep 2010 21:42:54 +0000 (23:42 +0200)]
re PR fortran/45438 ([OOP] ICE with -fcheck=pointer)
2010-09-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/45438
* trans-expr.c (gfc_conv_procedure_call): Fix pointer checking for
TBPs, PPCs and pointer/allocatable components.
2010-09-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/45438
* gfortran.dg/pointer_check_7.f90: New.
From-SVN: r164462
Eric Botcazou [Mon, 20 Sep 2010 21:29:48 +0000 (21:29 +0000)]
re PR rtl-optimization/42775 (GCC fails to rebuild itself with STAGE1_CFLAGS=-O1)
PR rtl-optimization/42775
* cfgrtl.c (rest_of_pass_free_cfg): Recompute notes if delay slot
scheduling is enabled.
From-SVN: r164458
Jakub Jelinek [Mon, 20 Sep 2010 20:41:08 +0000 (22:41 +0200)]
re PR rtl-optimization/45728 (ICE: in gen_lowpart_general, at rtlhooks.c:59 at -O1 when comparing union members)
PR rtl-optimization/45728
* expr.c (expand_expr_real_1): If op0 isn't REG or MEM, try
gen_lowpart_common first and if that fails, force_reg first
before calling gen_lowpart.
* gcc.c-torture/compile/pr45728.c: New test.
From-SVN: r164456
Jakub Jelinek [Mon, 20 Sep 2010 20:37:10 +0000 (22:37 +0200)]
re PR rtl-optimization/45678 (crash on vector code with -m32 -msse)
PR middle-end/45678
* cfgexpand.c (expand_one_stack_var_at): Use
crtl->max_used_stack_slot_alignment as max_align, instead
of maximum of that and PREFERRED_STACK_BOUNDARY.
Don't call update_stack_alignment.
From-SVN: r164454
Eric Botcazou [Mon, 20 Sep 2010 20:11:35 +0000 (20:11 +0000)]
langhooks.h (struct lang_hooks_for_types): Remove hash_types field.
* langhooks.h (struct lang_hooks_for_types): Remove hash_types field.
* langhooks-def.h (LANG_HOOKS_HASH_TYPES): Delete.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Remove LANG_HOOKS_HASH_TYPES.
* system.h (LANG_HOOKS_HASH_TYPES): Poison.
* tree.c (type_hash_canon): Do not test lang_hooks.types.hash_types.
(build_nonstandard_integer_type): Likewise.
(build_range_type_1): New function, built from...
(build_range_type): ...this. Call build_range_type_1.
(build_nonshared_range_type): New function.
(build_array_type_1): New function, built from...
(build_array_type: ...this. Call build_array_type_1.
(build_nonshared_array_type): New function.
* tree.h (build_nonshared_range_type): Declare.
(build_nonshared_array_type): Likewise.
ada/
* gcc-interface/decl.c (gnat_to_gnu_entity): Replace calls to
build_array_type with calls to build_nonshared_array_type.
(substitute_in_type): Likewise.
* gcc-interface/misc.c (LANG_HOOKS_HASH_TYPES): Delete.
(LANG_HOOKS_TYPE_HASH_EQ): Define.
(gnat_post_options): Add 'static' keyword.
(gnat_type_hash_eq): New static function.
* gcc-interface/utils.c (fntype_same_flags_p): New function.
(create_subprog_type): Call it.
(create_index_type): Call build_nonshared_range_type and tidy up.
(create_range_type): Likewise.
* gcc-interface/gigi.h (fntype_same_flags_p): Declare.
From-SVN: r164452
Ralf Wildenhues [Mon, 20 Sep 2010 19:33:12 +0000 (19:33 +0000)]
re PR libstdc++/45711 (Building with "--enable-libstdcxx-debug" fails during install)
Fix PR libstdc++/45711.
libstdc++-v3/:
PR libstdc++/45711
* src/Makefile.am (stamp-debug): Also adjust possibly-relative
file names in MKDIR_P, and, for consistency, also top_build_prefix.
* src/Makefile.in: Regenerate.
From-SVN: r164451
Anatoly Sokolov [Mon, 20 Sep 2010 19:30:31 +0000 (23:30 +0400)]
arm.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/arm/arm.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/arm/arm.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(arm_class_likely_spilled_p): New function.
From-SVN: r164450
Uros Bizjak [Mon, 20 Sep 2010 19:04:02 +0000 (21:04 +0200)]
i386.c (ix86_expand_ashl_const): Rewrite using indirect functions.
* config/i386/i386.c (ix86_expand_ashl_const): Rewrite using
indirect functions.
(ix86_split_ashl): Ditto.
(ix86_split_ashr): Ditto.
(ix86_split_lshr): Ditto.
(ix86_adjust_counter): Ditto.
From-SVN: r164449
Paul Thomas [Mon, 20 Sep 2010 18:55:12 +0000 (18:55 +0000)]
re PR fortran/45081 (ICE in gfc_conv_array_initializer, at fortran/trans-array.c:4208)
2010-09-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45081
* simplify.c (is_constant_array_expr): Allow structure array
elements as well as constants.
(gfc_simplify_pack, gfc_simplify_reshape, gfc_simplify_spread,
gfc_simplify_transpose, gfc_simplify_unpack): Copy the derived
type of source to the result.
2010-09-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/45081
* gfortran.dg/derived_array_intrinsics_1.f90 : New test.
From-SVN: r164448
Nicola Pero [Mon, 20 Sep 2010 18:32:08 +0000 (18:32 +0000)]
In gcc/:
* c-family/c-common.h (constant_string_class): Documented with
comment identical to the one in c-common.c.
From-SVN: r164447
H.J. Lu [Mon, 20 Sep 2010 18:03:28 +0000 (18:03 +0000)]
Add "\\".
2010-09-20 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/tree-ssa/pr45605.C: Add "\\".
From-SVN: r164446
Jakub Jelinek [Mon, 20 Sep 2010 16:49:58 +0000 (18:49 +0200)]
dwarf2out.c (any_cfis_emitted): New static variable.
* dwarf2out.c (any_cfis_emitted): New static variable.
(add_fde_cfi): Set it.
(dwarf2out_frame_debug): Clear it before processing,
if it is set afterwards, flush any queued reg saves.
From-SVN: r164443
Jakub Jelinek [Mon, 20 Sep 2010 16:48:29 +0000 (18:48 +0200)]
re PR debug/45124 (No DW_AT_accessibility for public DIEs in DW_TAG_class_type)
PR debug/45124
* dwarf2out.c (add_accessibility_attribute): Assume
DW_ACCESS_private as the default for dwarf_version > 2
and DW_TAG_class_type parent.
(gen_inheritance_die): Assume DW_ACCESS_public as the default
for dwarf_version > 2 and parent other than DW_TAG_class_type.
From-SVN: r164442
Rafael Carre [Mon, 20 Sep 2010 16:21:57 +0000 (16:21 +0000)]
re PR target/45726 (Thumb2 instruction emitted for incompatible CPU)
2010-09-20 Rafael Carre <rafael.carre@gmail.com>
PR target/45726
* arm.md (arm_movt): Only enable on machines with MOVT.
From-SVN: r164441
Jie Zhang [Mon, 20 Sep 2010 16:00:29 +0000 (16:00 +0000)]
arm.c (arm_address_offset_is_imm): New.
* config/arm/arm.c (arm_address_offset_is_imm): New.
(arm_early_store_addr_dep): New.
(arm_early_load_addr_dep): New.
* config/arm/arm-protos.h (arm_early_store_addr_dep): Declare.
(arm_early_load_addr_dep): Declare.
(arm_address_offset_is_imm): Declare.
* config/arm/cortex-m4.md: New file.
* config/arm/cortex-m4-fpu.md: New file.
* config/arm/arm.md: Include cortex-m4.md and cortex-m4-fpu.md.
(attr generic_sched): Exclude cortexm4.
(attr generic_vfp): Exclude cortexm4.
From-SVN: r164440
Richard Guenther [Mon, 20 Sep 2010 15:54:03 +0000 (15:54 +0000)]
re PR tree-optimization/45704 (load byte instruction is used for volatile int)
2010-09-20 Richard Guenther <rguenther@suse.de>
PR middle-end/45704
* gimplify.c (gimplify_modify_expr_rhs): Preserve volatileness.
* gcc.dg/torture/pr45704.c: New testcase.
From-SVN: r164439
Jan Hubicka [Mon, 20 Sep 2010 15:48:42 +0000 (17:48 +0200)]
re PR tree-optimization/45605 (Missed devirtualization)
PR tree-optimize/45605
* cgraph.h (const_value_known_p): Declare.
(varpool_decide_const_value_known): Remove.
* tree-ssa-ccp.c (get_base_constructor): Use it.
* lto-cgraph.c (compute_ltrans_boundary): Likewise.
* expr.c (string_constant): Likewise.
* tree-ssa-loop-ivcanon.c (constant_after_peeling): Likewise.
* ipa.c (ipa_discover_readonly_nonaddressable_var,
function_and_variable_visibility): Likewise.
* gimplify.c (gimplify_call_expr): Likewise.
* gimple-fold.c (get_symbol_constant_value): Likewise.
* varpool.c (varpool_decide_const_value_known): Replace by...
(const_value_known_p): ... this one; handle other kinds of DECLs
too and work for automatic vars.
(varpool_finalize_decl): Use const_value_known_p.
* lto.c (lto_promote_cross_file_statics): Use const_value_known_p.
* g++.dg/tree-ssa/pr45605.C: New testcase.
From-SVN: r164438
Rafael Carre [Mon, 20 Sep 2010 15:25:44 +0000 (15:25 +0000)]
re PR target/45726 (Thumb2 instruction emitted for incompatible CPU)
2010-09-20 Rafael Carre <rafael.carre@gmail.com>
PR target/45726
* arm.md (arm_movtas_ze): Only enable on machine with MOVT.
From-SVN: r164436
Michael Matz [Mon, 20 Sep 2010 14:45:30 +0000 (14:45 +0000)]
re PR testsuite/45706 (gcc.dg/vect/vect-114.c)
PR testsuite/45706
* gcc.dg/vect/pr43432.c: Don't override dg-options, defaults are
enough.
From-SVN: r164435
Richard Guenther [Mon, 20 Sep 2010 14:40:10 +0000 (14:40 +0000)]
re PR middle-end/45705 (Useless store not optimized away)
2010-09-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45705
* tree-ssa-dom.c (optimize_stmt): Perform redundant store elimination.
* gcc.dg/tree-ssa/ssa-dom-dse-1.c: New testcase.
From-SVN: r164434
Michael Matz [Mon, 20 Sep 2010 14:12:04 +0000 (14:12 +0000)]
re PR testsuite/45706 (gcc.dg/vect/vect-114.c)
PR testsuite/45706
* lib/target-supports.exp (check_effective_target_vect_perm):
Add i?86-*-*.
From-SVN: r164433
Jakub Jelinek [Mon, 20 Sep 2010 13:24:23 +0000 (15:24 +0200)]
re PR rtl-optimization/45695 (-O1 wrong-code by cmove)
PR rtl-optimization/45695
* combine.c (try_combine): When splitting a two set pattern,
make sure the pattern which will be put into i2 doesn't use REGs
or MEMs set by insns in between i2 and i3.
* gcc.c-torture/execute/pr45695.c: New test.
From-SVN: r164431
GCC Administrator [Mon, 20 Sep 2010 00:17:26 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r164429
Jan Hubicka [Sun, 19 Sep 2010 21:49:28 +0000 (23:49 +0200)]
re PR lto/44246 (ICE with -fwhopr/-flto when using strlen and strcat without previous declaration)
PR lto/44246
* lto-cgraph.c (input_cgraph_1, input_varpool_1): Avoid
processing same node twice.
* gcc.c-torture/compile/pr44246.c:New file.
From-SVN: r164425
Eric Botcazou [Sun, 19 Sep 2010 14:55:28 +0000 (14:55 +0000)]
trans.c (gnat_pushdecl): Do not do anything special for PARM_DECLs.
* gcc-interface/trans.c (gnat_pushdecl): Do not do anything special
for PARM_DECLs.
(end_subprog_body): If the body is a BIND_EXPR, make its associated
block the top-level one.
(build_function_stub): Build a statement group for the whole function.
* gcc-interface/utils.c (Subprogram_Body_to_gnu): If copy-in/copy-out
is used, create the enclosing block early and process first the OUT
parameters.
From-SVN: r164422
Anatoly Sokolov [Sun, 19 Sep 2010 14:53:05 +0000 (18:53 +0400)]
bfin.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/bfin/bfin.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/bfin/bfin.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(bfin_class_likely_spilled_p): New function
From-SVN: r164421
Ira Rosen [Sun, 19 Sep 2010 14:23:40 +0000 (14:23 +0000)]
re PR tree-optimization/45714 (Vectorization of double pow function causes a segmentation fault)
PR tree-optimization/45714
* tree-vect-stmts.c (vect_transform_stmt): Use a dummy statement
created in vectorizable_call instead of the original statement in
def stmt updates.
From-SVN: r164420
Eric Botcazou [Sun, 19 Sep 2010 14:03:39 +0000 (14:03 +0000)]
decl.c (gnat_to_gnu_entity): Do not generate debug info for individual enumerators.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Type>: Do
not generate debug info for individual enumerators.
From-SVN: r164418
Eric Botcazou [Sun, 19 Sep 2010 13:55:36 +0000 (13:55 +0000)]
decl.c (gnat_to_gnu_entity): Use record type instead of enumeral type as the dummy type built for the...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Use record
type instead of enumeral type as the dummy type built for the template
type of fat pointers.
From-SVN: r164417
Eric Botcazou [Sun, 19 Sep 2010 13:48:51 +0000 (13:48 +0000)]
gigi.h (get_elaboration_procedure): Declare.
* gcc-interface/gigi.h (get_elaboration_procedure): Declare.
(gnat_zaplevel): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force global
binding level for an external constant.
<E_Constant>: Force the local context and create a fake scope before
translating the defining expression of an external constant.
<object>: Treat external constants at the global level explicitly for
renaming declarations.
(elaborate_expression_1): Force the variable to be static if the
expression is global.
* gcc-interface/trans.c (get_elaboration_procedure): New function.
(call_to_gnu): Use it.
(gnat_to_gnu): Likewise.
<N_Object_Declaration>: Do not test Is_Public to force the creation of
an initialization variable.
(add_decl_expr): Discard the statement if the declaration is external.
* gcc-interface/utils.c (gnat_pushdecl): Do not put the declaration in
the current block if it is external.
(create_var_decl_1): Do not test Is_Public to set TREE_STATIC.
(gnat_zaplevel): New global function.
From-SVN: r164416
Eric Botcazou [Sun, 19 Sep 2010 13:18:26 +0000 (13:18 +0000)]
decl.c (gnat_to_gnu_entity): Explicitly test _LEVEL variables against zero in all cases.
* gcc-interface/decl.c (gnat_to_gnu_entity): Explicitly test _LEVEL
variables against zero in all cases.
(rest_of_type_decl_compilation): Likewise.
* gcc-interface/trans.c (gigi): Pass properly typed constants to
create_var_decl.
(call_to_gnu): Fix formatting.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(Exception_Handler_to_gnu_zcx): Likewise.
(gnat_to_gnu) <N_Object_Declaration>: Short-circuit handling of
constant
expressions in presence of a freeze node.
From-SVN: r164415
Eric Botcazou [Sun, 19 Sep 2010 13:12:13 +0000 (13:12 +0000)]
decl.c (gnat_to_gnu_entity): Look into expressions for external constants that are aggregates.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Look into
expressions for external constants that are aggregates.
* gcc-interface/utils2.c (build_simple_component_ref): If the field
is an inherited component in an extension, look through the extension.
From-SVN: r164414
Uros Bizjak [Sun, 19 Sep 2010 12:42:32 +0000 (14:42 +0200)]
i386-protos.h (split_double_mode): New prototype.
* config/i386/i386-protos.h (split_double_mode): New prototype.
(split_di, split_ti): Remove prototypes.
* config/i386/i386.c (split_double_mode): New function.
(split_di, split_ti): Remove.
(ix86_expand_branch): Use split_double_mode.
(ix86_split_to_parts): Ditto.
(ix86_split_ashl): Ditto.
(ix86_split_ashr): Ditto.
(ix86_split_lshr): Ditto.
(ix86_force_to_memory): Ditto.
* config/i386/i386.md: Use split_double_mode in double-mode splitters.
From-SVN: r164413
Ralf Wildenhues [Sun, 19 Sep 2010 09:44:24 +0000 (09:44 +0000)]
Uglify C++ headers some more.
libstdc++-v3/:
* include/ext/throw_allocator.h
(hash<__gnu_cxx::throw_value_limit>::operator()): Uglify local.
(hash<__gnu_cxx::throw_value_random>::operator()): Likewise.
* include/parallel/set_operations.h (__symmetric_difference_func):
Uglify remaining arguments to __count, __first_empty, _M_invoke.
(__difference_func): Likewise for __count.
* include/profile/impl/profiler_node.h
(__object_info_base::__write): Uglify parameter.
From-SVN: r164411
Paolo Carlini [Sun, 19 Sep 2010 08:52:50 +0000 (08:52 +0000)]
hash_bytes.cc: Compile load_bytes and shift_mix only when __SIZEOF_SIZE_T__ == 8.
2010-09-19 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash_bytes.cc: Compile load_bytes and shift_mix only when
__SIZEOF_SIZE_T__ == 8.
From-SVN: r164410
GCC Administrator [Sun, 19 Sep 2010 00:17:20 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r164409
Jan Hubicka [Sat, 18 Sep 2010 23:13:17 +0000 (01:13 +0200)]
re PR tree-optimization/45453 (ICE: verify_cgraph_node failed: inlined_to pointer set for noninline callers with -O2 -fno-early-inlining)
PR tree-optimization/45453
* cgraphunit.c (cgraph_finalize_function): Consider comdat & external
virtual functions are reachable.
* ipa-inline.c (cgraph_clone_inlined_nodes): Likewise.
* ipa.c (cgraph_remove_unreachable_nodes): Likewise.
* ipa-prop.c (ipa_modify_formal_parameters): Clear DECL_VIRTUAL_P
when modifying function.
* g++.dg/tree-ssa/pr45453.C: New testcase.
From-SVN: r164405
Thomas Koenig [Sat, 18 Sep 2010 22:45:13 +0000 (22:45 +0000)]
frontend-passes.c (gfc_expr_walker): Also handle EXPR_SUBSTRING.
2010-09-19 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c (gfc_expr_walker): Also
handle EXPR_SUBSTRING.
From-SVN: r164404
Thomas Koenig [Sat, 18 Sep 2010 22:22:38 +0000 (22:22 +0000)]
frontend-passes.c (gfc_expr_walker): Handle constructors and references.
2010-09-17 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c (gfc_expr_walker): Handle
constructors and references.
From-SVN: r164403
Jan Hubicka [Sat, 18 Sep 2010 21:25:29 +0000 (23:25 +0200)]
re PR tree-optimization/45605 (Missed devirtualization)
PR tree-optimization/45605
* cgraphunit.c (cgraph_analyze_functions): Allocate bitmap obstack.
* gimple-fold.c (static_object_in_other_unit_p): New function.
(canonicalize_constructor_val): Use it.
(get_symbol_constant_value): Be reaqdy for canonicalize_constructor_val
returning NULL.
(gimple_fold_obj_type_ref_known_binfo): Use static_object_in_other_unit_p.
From-SVN: r164402
Jason Merrill [Sat, 18 Sep 2010 21:22:10 +0000 (17:22 -0400)]
call.c (compare_ics): Do lvalue/rvalue reference binding comparison for ck_list, too.
* call.c (compare_ics): Do lvalue/rvalue reference binding
comparison for ck_list, too.
From-SVN: r164401
Richard Guenther [Sat, 18 Sep 2010 17:13:04 +0000 (17:13 +0000)]
re PR tree-optimization/45709 (internal compiler error: in add_phi_arg, at tree-phinodes.c:395)
2010-09-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45709
* tree-inline.c (copy_phis_for_bb): Delay commit of edge
insertions until after all PHI nodes of the block are processed.
* g++.dg/torture/pr45709-2.C: New testcase.
From-SVN: r164397
Tijl Coosemans [Sat, 18 Sep 2010 17:05:26 +0000 (17:05 +0000)]
* config/i386/freebsd.h (SUBTARGET32_DEFAULT_CPU): Add.
From-SVN: r164396
H.J. Lu [Sat, 18 Sep 2010 16:24:50 +0000 (16:24 +0000)]
Pass -fno-pic to gcc.target/i386/pad-3.c.
2010-09-18 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/45719
* gcc.target/i386/pad-3.c: Pass -fno-pic.
From-SVN: r164395
Gerald Pfeifer [Sat, 18 Sep 2010 16:24:38 +0000 (16:24 +0000)]
lto-elf.c (lto_obj_file_open): Also provide filename when elf_begin fails.
* lto-elf.c (lto_obj_file_open): Also provide filename when
elf_begin fails.
From-SVN: r164394
Kai Tietz [Sat, 18 Sep 2010 14:50:31 +0000 (14:50 +0000)]
config.gcc (*-w64-mingw*): Correct typo about t-dfprules.
2010-09-18 Kai Tietz <kai.tietz@onevision.com>
* config.gcc (*-w64-mingw*): Correct typo about t-dfprules.
From-SVN: r164393
Richard Guenther [Sat, 18 Sep 2010 11:38:25 +0000 (11:38 +0000)]
re PR tree-optimization/45709 (internal compiler error: in add_phi_arg, at tree-phinodes.c:395)
2010-09-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45709
* tree-inline.c (copy_phis_for_bb): Fixup new_edge when
we splitted it.
* g++.dg/torture/pr45709.C: New testcase.
From-SVN: r164390
Nicola Pero [Sat, 18 Sep 2010 09:34:58 +0000 (09:34 +0000)]
In libobjc/:
* hash.c: Include objc-private/hash.h instead of objc/hash.h.
* objc/sarray.h: Moved into objc/deprecated/sarray.h;
objc/sarray.h replaced with a placeholder including the file from
the deprecated/ directory.
* objc-private/sarray.h: New file (private copy of sarray.h).
* hash.c: Include <assert.h> instead of "assert.h"
* sarray.c: Include <assert.h> instead of "assert.h". Include
objc-private/sarray.h instead of objc/sarray.h.
* selector.c: Include objc-private/sarray.h instead of
objc/sarray.h.
* sendmsg.c: Include <assert.h>. Include objc-private/sarray.h
instead of objc/sarray.h.
* Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.
From-SVN: r164389
Luc Hermitte [Sat, 18 Sep 2010 01:29:31 +0000 (03:29 +0200)]
re PR libstdc++/45713 (sizeof std::bitset<ULONG_MAX> == 1)
2010-09-17 Luc Hermitte <hermitte@free.fr>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/45713
* include/std/bitset: Fix _GLIBCXX_BITSET_WORDS macro.
* testsuite/23_containers/bitset/45713.cc: New.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r164388
GCC Administrator [Sat, 18 Sep 2010 00:17:46 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r164387
Sebastian Pop [Fri, 17 Sep 2010 21:39:28 +0000 (21:39 +0000)]
Add DEBUG_FUNCTION to all the dot_* debugging functions.
2010-09-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dot_deps): Add DEBUG_FUNCTION.
(dot_deps_stmt): Same.
* graphite-poly.c (dot_lst): Same.
* graphite-scop-detection.c (dot_all_scops): Same.
(dot_scop): Same.
From-SVN: r164381
Sebastian Pop [Fri, 17 Sep 2010 21:39:19 +0000 (21:39 +0000)]
Add back dot_rdg.
2010-09-17 Sebastian Pop <sebastian.pop@amd.com>
Revert commit: 2009-12-16 Ben Elliston <bje@au.ibm.com>
* tree-data-ref.c (dot_rdg_1): Added back.
(dot_rdg): Same. Added "#if 0" around system call.
From-SVN: r164380
H.J. Lu [Fri, 17 Sep 2010 21:07:09 +0000 (21:07 +0000)]
Pad short functions with NOPs for Atom.
gcc/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
Richard Henderson <rth@redhat.com>
* config/i386/i386.c (initial_ix86_tune_features): Add
X86_TUNE_PAD_SHORT_FUNCTION.
(ix86_code_end): Pad with 8 NOPs for TARGET_PAD_SHORT_FUNCTION.
(ix86_count_insn): New.
(ix86_pad_short_function): Likewise.
(ix86_reorg): Support TARGET_PAD_SHORT_FUNCTION.
* config/i386/i386.h (ix86_tune_indices): Add
X86_TUNE_PAD_SHORT_FUNCTION.
(TARGET_PAD_SHORT_FUNCTION): New.
* config/i386/i386.md (UNSPEC_NOPS): New.
(nops): Likewise.
gcc/testsuite/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pad-1.c: New.
* gcc.target/i386/pad-2.c: Likewise.
* gcc.target/i386/pad-3.c: Likewise.
* gcc.target/i386/pad-4.c: Likewise.
* gcc.target/i386/pad-5a.c: Likewise.
* gcc.target/i386/pad-5b.c: Likewise.
* gcc.target/i386/pad-6a.c: Likewise.
* gcc.target/i386/pad-6b.c: Likewise.
* gcc.target/i386/pad-7.c: Likewise.
* gcc.target/i386/pad-8.c: Likewise.
* gcc.target/i386/pad-9.c: Likewise.
* gcc.target/i386/pad-10.c: Likewise.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r164379
Sebastian Pop [Fri, 17 Sep 2010 19:09:47 +0000 (19:09 +0000)]
Do not print warning messages when there are no occurences.
2010-07-02 Sebastian Pop <sebastian.pop@amd.com>
* check_GNU_style.sh: Do not print warning messages when there are
no occurences.
From-SVN: r164378
H.J. Lu [Fri, 17 Sep 2010 18:00:40 +0000 (18:00 +0000)]
Make sure that all variable sized adjustments are multiple of preferred
stack boundary after stack alignment.
gcc/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* calls.c (expand_call): Make sure that all variable sized
adjustments are multiple of preferred stack boundary after
stack alignment.
gcc/testsuite/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* gcc.dg/torture/stackalign/alloca-5.c: New.
From-SVN: r164377
DJ Delorie [Fri, 17 Sep 2010 17:51:43 +0000 (13:51 -0400)]
rx.c (valid_psw_flag): New.
* config/rx/rx.c (valid_psw_flag): New.
(rx_expand_builtin): Call it for setpsw/clrpsw.
(rx_expand_builtin_mvtipl): Pass an integer to IN_RANGE, not an
RTX.
* config/rx/rx.md (bitclr): Don't mark the output as early-clobber.
(bitclr_in_memory): Likewise.
(clrspw, setpsw, mvfc, mvtc, mvtipl): Make volatile.
From-SVN: r164376
H.J. Lu [Fri, 17 Sep 2010 17:49:30 +0000 (17:49 +0000)]
Update stack alignment when increasing local variable alignment.
gcc/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45678
* cfgexpand.c (update_stack_alignment): New.
(get_decl_align_unit): Use it.
(expand_one_stack_var_at): Call update_stack_alignment.
gcc/testsuite/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45678
* gcc.dg/torture/pr45678-2.c: New.
From-SVN: r164375
Nicola Pero [Fri, 17 Sep 2010 16:52:36 +0000 (16:52 +0000)]
In libobjc/:
* objc-private/objc-list.h (list_remove_elem): Unused function
removed. (list_nth): Unused function removed. (list_find):
Unused function removed. (list_lenght): Unused function removed.
Also, fixed an error in my last commit by adding back
objc/hash.h and objc/objc-list.h that had not been committed.
From-SVN: r164374