Olivier Hainque
7c7c339b4b
Makefile.in: move dependency on install-unwind_h from "install-leaf" to "install".
...
libgcc/
* Makefile.in: move dependency on install-unwind_h from
"install-leaf" to "install".
From-SVN: r187839
2012-05-24 14:57:11 +00:00
Olivier Hainque
fdc1b7d3a7
Makefile.in (clean): Remove libgcc_tm.stamp as well.
...
libgcc/
* Makefile.in (clean): Remove libgcc_tm.stamp as well.
Use a separate command for stamp removals.
From-SVN: r187838
2012-05-24 14:51:33 +00:00
Paolo Carlini
c7837f7efb
re PR c++/32080 (Can goto a function try-block)
...
/cp
2012-05-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/32080
* parser.c (cp_parser_ctor_initializer_opt_and_function_body,
cp_parser_function_body): Add a bool parameter, true when parsing
a function-try-block.
(cp_parser_function_try_block): Pass true to the above.
(cp_parser_function_definition_after_declarator,
cp_parser_function_transaction): Adjust.
/testsuite
2012-05-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/32080
* g++.dg/eh/goto2.C: New.
From-SVN: r187837
2012-05-24 14:47:06 +00:00
Richard Guenther
49bdc0a65d
re PR middle-end/53460 (Internal compiler error: in calc_dfs_tree, at dominance.c:395)
...
2012-05-24 Richard Guenther <rguenther@suse.de>
PR middle-end/53460
* tree-profile.c (tree_profiling): Cleanup the CFG if
execute_fixup_cfg requests it.
* g++.dg/tree-prof/pr53460.C: New testcase.
From-SVN: r187831
2012-05-24 12:46:53 +00:00
Richard Guenther
8a791ae231
re PR bootstrap/53466 (Bootstrap failure)
...
2012-05-24 Richard Guenther <rguenther@suse.de>
PR bootstrap/53466
* g++.dg/debug/pr53466.C: New testcase.
From-SVN: r187830
2012-05-24 12:36:40 +00:00
Richard Guenther
0faa05629e
tree-flow.h (create_var_ann): Remove.
...
2012-05-24 Richard Guenther <rguenther@suse.de>
* tree-flow.h (create_var_ann): Remove.
* tree-dfa.c (create_var_ann): Remove and inline into its
single caller ...
(add_referenced_var_1): ... here.
* varpool.c (add_new_static_var): Do not call add_referenced_var
for global vars.
* gimple-fold.c (canonicalize_constructor_val): Likewise.
* tree-switch-conversion.c (build_one_array): Likewise.
* tree-profile.c (gimple_gen_ic_profiler): Likewise.
* tree-flow-inline.h (gimple_referenced_vars): Guard against
NULL fn argument.
* tree-inline.c (remap_gimple_op_r): Likewise. Check
gimple_referenced_vars instead of gimple_in_ssa_p.
(copy_tree_body_r): Likewise.
(setup_one_parameter): Likewise.
(declare_return_variable): Likewise.
(tree_function_versioning): Likewise.
From-SVN: r187829
2012-05-24 12:33:49 +00:00
Jakub Jelinek
0d5a9e7848
re PR tree-optimization/53465 (wrong code with -O1 -ftree-vrp)
...
PR tree-optimization/53465
* tree-vrp.c (extract_range_from_cond_expr): First copy_value_range
vr0 into *vr, then vrp_meet that.
(vrp_meet): If one vr type is VR_UNDEFINED, ensure the result doesn't
have any equivalences.
(vrp_visit_phi_node): Call copy_value_range instead of vrp_meet the
first time.
* gcc.c-torture/execute/pr53465.c: New test.
From-SVN: r187827
2012-05-24 13:51:09 +02:00
Jim MacArthur
e7bcc69120
recog.c (reg_fits_class_p): Check both regno and regno + offset are hard registers.
...
2012-05-24 Jim MacArthur<jim.macarthur@arm.com>
* recog.c (reg_fits_class_p): Check both regno and regno + offset are
hard registers.
* regs.h (in_hard_reg_set_p): Assert that regno is a hard register and
check end_regno - 1 is a hard register.
From-SVN: r187826
2012-05-24 11:07:57 +00:00
Richard Guenther
b44be1e6cf
varpool.c (add_new_static_var): Remove call to create_var_ann.
...
2012-05-24 Richard Guenther <rguenther@suse.de>
* varpool.c (add_new_static_var): Remove call to create_var_ann.
* tree-ssa-operands.c (create_vop_var): Likewise.
From-SVN: r187825
2012-05-24 09:57:38 +00:00
Richard Guenther
1431ce0161
re PR bootstrap/53466 (Bootstrap failure)
...
2012-05-24 Richard Guenther <rguenther@suse.de>
PR bootstrap/53466
* tree-ssa-live.c (remove_unused_scope_block_p): Properly
handle globals.
(remove_unused_locals): Pass global_unused_vars to
remove_unused_scope_block_p. Restore code walking all
referenced vars and pruning them.
From-SVN: r187824
2012-05-24 09:54:25 +00:00
Jan Hubicka
07250f0e28
tree.h (alias_diag_flags): Remove.
...
* tree.h (alias_diag_flags): Remove.
(alias_pair): Remove emitted_diags.
(finish_aliases_1, finish_aliases_2, remove_unreachable_alias_pairs,
symbol_alias_set_t, symbol_alias_set_destroy,
symbol_alias_set_contains, propagate_aliases_backward): Remove.
* toplev.c (compile_file): Do not call finish_aliases_2
* cgraphunit.c (cgraph_process_new_functions): Do not call finish_aliases_1.
(handle_alias_pairs): Output diagnostics about aliases to externals.
(assemble_thunks_and_aliases): Use do_assemble_alias.
(output_weakrefs): Likewise.
(finalize_compilation_unit): Do not call finish_aliases_1.
* ipa.c (symtab_remove_unreachable_nodes): De not call remove_unreachable_alias_pairs.
* varasm.c (do_assemble_alias): Export.
(symbol_alias_set_create, symbol_alias_set_destroy, symbol_alias_set_contains,
symbol_alias_set_insert, propagate_aliases_forward, propagate_aliases_backward,
propagate_aliases_backward, trivially_visible_alias, trivially_defined_alias,
remove_unreachable_alias_pairs, finish_aliases_1, finish_aliases_2,
assemble_alias): Remove.
* output.h (do_assemble_alias): Declare.
* varpool.c (varpool_remove_unreferenced_decls): Do not call finish_aliases_1.
From-SVN: r187823
2012-05-24 09:44:48 +00:00
GCC Administrator
0f4fb41f6d
Daily bump.
...
From-SVN: r187822
2012-05-24 00:18:39 +00:00
Doug Evans
60a1fb3537
leb128.h: #include stdint.h, inttypes.h.
...
* leb128.h: #include stdint.h, inttypes.h.
(read_uleb128_to_uint64): Renamed from read_uleb128_to_ull.
Change to take a uint64_t * argument instead of unsigned long long.
(read_sleb128_to_uint64): Renamed from read_sleb128_to_ll.
Change to take an int64_t * argument instead of long long.
From-SVN: r187818
2012-05-23 23:42:25 +00:00
Martin Jambor
fb9098887b
ipa-inline-analysis.c (inline_merge_summary): Free operand_map.
...
2012-05-23 Martin Jambor <mjambor@suse.cz>
* ipa-inline-analysis.c (inline_merge_summary): Free operand_map.
From-SVN: r187817
2012-05-24 00:23:54 +02:00
Tobias Burnus
239b48db1b
re PR fortran/51055 (deferred length character allocation: allocate(character(len=i)::s) rejected)
...
2012-05-23 Tobias Burnus <burnus@net-b.de>
PR fortran/51055
PR fortran/45170
* match.c (gfc_match_allocate): Set length_from_typespec
for characters.
* resolve.c (resolve_charlen): If set, don't check whether
the len is a specification expression.
2012-05-23 Tobias Burnus <burnus@net-b.de>
PR fortran/51055
PR fortran/45170
* gfortran.dg/allocate_with_typespec_6.f90: New.
From-SVN: r187811
2012-05-23 22:35:30 +02:00
Eric Botcazou
2e74510357
gimple.c (gimple_types_compatible_p_1): Remove bogus size handling.
...
* gimple.c (gimple_types_compatible_p_1) <ARRAY_TYPE>: Remove bogus
size handling.
(gimple_canonical_types_compatible_p) <ARRAY_TYPE>: Likewise.
(iterative_hash_gimple_type): Adjust comment.
(iterative_hash_canonical_type): Likewise. Hash the bounds of the
domain for an array type instead of the domain type itself.
From-SVN: r187807
2012-05-23 19:07:59 +00:00
Janne Blomqvist
c5a6cbd4ba
PR 53456 clock_gettime fallback for gf_gettime
...
2012-05-23 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/53456
* intrinsics/time_1.h (gf_gettime): Fallback for clock_gettime.
From-SVN: r187806
2012-05-23 21:52:47 +03:00
Richard Guenther
e8257960f0
Index...
...
Index: gcc/tree-sra.c
===================================================================
--- gcc/tree-sra.c (revision 187800)
+++ gcc/tree-sra.c (working copy)
@@ -2096,9 +2096,12 @@ analyze_access_subtree (struct access *root, struc
&& (TREE_CODE (root->type) != INTEGER_TYPE
|| TYPE_PRECISION (root->type) != root->size)
/* But leave bitfield accesses alone. */
- && (root->offset % BITS_PER_UNIT) == 0)
+ && (TREE_CODE (root->expr) != COMPONENT_REF
+ || !DECL_BIT_FIELD (TREE_OPERAND (root->expr, 1))))
{
tree rt = root->type;
+ gcc_assert ((root->offset % BITS_PER_UNIT) == 0
+ && (root->size % BITS_PER_UNIT) == 0);
root->type = build_nonstandard_integer_type (root->size,
TYPE_UNSIGNED (rt));
root->expr = build_ref_for_offset (UNKNOWN_LOCATION,
From-SVN: r187805
2012-05-23 15:53:59 +00:00
Georg-Johann Lay
b49eb0fff1
re PR target/53448 ([avr] ignoring __attribute__((aligned(2))))
...
PR target/53448
* config/avr/avr.h (ASM_OUTPUT_ALIGN): Don't inhibit .p2align 1.
* config/avr/elf.h (ASM_OUTPUT_BEFORE_CASE_LABEL): Use
ASM_OUTPUT_ALIGN.
From-SVN: r187803
2012-05-23 15:25:22 +00:00
Paolo Carlini
0a9696f022
re PR c++/29185 (inconsistent warning: deleting array)
...
/cp
2012-05-23 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/29185
* decl2.c (delete_sanity): Extend 'deleting array' warning to
any array type.
/testsuite
2012-05-23 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/29185
* g++.dg/warn/delete-array-1.C: New.
From-SVN: r187801
2012-05-23 14:19:27 +00:00
Richard Biener
9c09f152d9
tree-dfa.c (add_referenced_var_1): Do not add global vars.
...
2012-05-23 Richard Guenther <rguenther@suse.de>
* tree-dfa.c (add_referenced_var_1): Do not add global vars.
* tree-ssa-live.c (mark_all_vars_used_1): Handle global vars
via the global_unused_vars bitmap.
(remove_unused_locals): Handle global vars in local-decls via
a global_unused_vars bitmap instead of the used flag in the
var annotation. Simplify global variable handling and removal.
* gcc.dg/torture/pr39074-2.c: Adjust.
* gcc.dg/torture/pr39074.c: Likewise.
* gcc.dg/torture/pta-structcopy-1.c: Likewise.
* gcc.dg/tree-ssa/alias-19.c: Likewise.
From-SVN: r187800
2012-05-23 12:25:41 +00:00
Jan Hubicka
aa19cf8778
re PR tree-optimization/53426 (ICE:create_variable_info_for at ../../gcc-trunk/gcc/tree-ssa-structalias.c:5581)
...
PR middle-end/53426
* tree-ssa-structalias.c (create_variable_info_for): Skip constructors from
other partitions.
From-SVN: r187799
2012-05-23 09:47:10 +00:00
Jan Hubicka
66379195d6
re PR middle-end/53161 (ICE with weakref function and a function which takes vector types)
...
PR middle-end/53161
* symtab.c (symtab_register_node): Fix ordering issue.
From-SVN: r187798
2012-05-23 09:23:40 +00:00
Robert Mason
b8ce6b9cc0
re PR libfortran/53445 (No sticky bit on VxWorks - fix chmod.c)
...
2012-05-23 Robert Mason <rbmj@verizon.net>
Tobias Burnus <burnus@net-b.de>
PR libfortran/53445
* intrinsics/chmod.c (chmod_func): Ignore S_ISVTX on VxWorks.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r187797
2012-05-23 10:52:09 +02:00
Tobias Burnus
4179e59afa
re PR libfortran/53444 (Accommodate non-compliant strerror_r() on VxWorks.)
...
2012-05-23 Tobias Burnus <burnus@net-b.de>
PR libfortran/53444
* acinclude.m4 (LIBGFOR_CHECK_STRERROR_R): Add configure checks
* for
two- and three-argument versions of strerror_r.
* configure.ac (LIBGFOR_CHECK_STRERROR_R): Use it.
* runtime/error.c (gf_strerror): Handle two-argument version
of strerror_r.
* config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r187796
2012-05-23 10:34:06 +02:00
GCC Administrator
f883872b10
Daily bump.
...
From-SVN: r187788
2012-05-23 00:18:38 +00:00
John David Anglin
917344232c
re PR other/53231 (libatomic/tas_n.c 💯 10: error: 'ret' undeclared (first use in this function))
...
PR other/53231
* tas_n.c (libat_test_and_set): Correct return. Remove unused variable.
From-SVN: r187783
2012-05-22 23:54:32 +00:00
Ian Lance Taylor
4579805199
runtime: Tweak runtime.Callers for Go 1 compatibility.
...
From-SVN: r187781
2012-05-22 21:52:56 +00:00
Doug Evans
19460426c3
* leb128.h: New file.
...
From-SVN: r187780
2012-05-22 17:47:49 +00:00
Ian Lance Taylor
ef1f343258
runtime: Use getcontext, not setjmp, to save regs for GC.
...
From-SVN: r187777
2012-05-22 16:57:23 +00:00
Steven Drake
3cd50158f5
gcc.c (do_spec_1): Add %M spec token to output multilib_os_dir.
...
2012-05-22 Steven Drake <sbd@NetBSD.org>
* gcc.c (do_spec_1): Add %M spec token to output multilib_os_dir.
From-SVN: r187775
2012-05-22 16:17:55 +01:00
David Edelsohn
f8dc1d832e
rs6000.c (rs6000_aix_asm_output_dwarf_table_ref): Use strip_name_encoding target hook.
...
* config/rs6000/rs6000.c (rs6000_aix_asm_output_dwarf_table_ref):
Use strip_name_encoding target hook.
From-SVN: r187774
2012-05-22 10:15:51 -04:00
Tom Tromey
d931f693ce
demangle-expected: Add regression test.
...
http://sourceware.org/bugzilla/show_bug.cgi?id=14065
* testsuite/demangle-expected: Add regression test.
* cp-demangle.c (d_find_pack): Return NULL for
DEMANGLE_COMPONENT_UNNAMED_TYPE.
From-SVN: r187773
2012-05-22 13:55:02 +00:00
Richard Guenther
3828719aa9
tree.h (VAR_DECL_IS_VIRTUAL_OPERAND): New.
...
2012-05-22 Richard Guenther <rguenther@suse.de>
* tree.h (VAR_DECL_IS_VIRTUAL_OPERAND): New.
(init_function_for_compilation): Remove.
* tree-dfa.c (find_vars_r): Take struct function argument.
(find_referenced_vars_in): Adjust.
* tree-ssa-operands.c (clobber_stats): Remove.
(create_vop_var): Take struct function argument. Mark
virtual operand with VAR_DECL_IS_VIRTUAL_OPERAND.
(init_ssa_operands): Take struct function argument.
(fini_ssa_operands): Do not dump dead stats.
* tree-ssa-operands.h (init_ssa_operands): Take struct function
argument.
* cgraphunit.c (init_lowered_empty_function): Adjust.
* lto-streamer-in.c (input_cfg): Likewise.
* tree-inline.c (initialize_cfun): Likewise.
* tree-into-ssa.c (rewrite_into_ssa): Likewise.
* omp-low.c (expand_omp_taskreg): Likewise. Avoid switching
cfun.
* gimple.c (is_gimple_reg): Optimize the SSA_NAME case,
virtual operands are not registers.
From-SVN: r187772
2012-05-22 11:59:41 +00:00
Richard Guenther
72d5c6c157
tree-cfg.c (verify_gimple_assign_unary): Fix typo in previous commit.
...
2012-05-22 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_assign_unary): Fix typo in previous
commit.
From-SVN: r187771
2012-05-22 11:21:30 +00:00
Tobias Burnus
f391a85582
re PR fortran/53389 (-frealloc-lhs: memory leak when assigning array function result to allocatable array, where one of its supplied arguments is itself an array function result)
...
2012-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/53389
* trans-array.c (gfc_add_loop_ss_code): Don't evaluate
* expression, if
ss->is_alloc_lhs is set.
2012-05-22 Tobias Burnus <burnus@net-b.de>
PR fortran/53389
* gfortran.dg/realloc_on_assign_15.f90: New.
From-SVN: r187769
2012-05-22 12:10:47 +02:00
Richard Guenther
633d9236a1
re PR middle-end/51071 (ICE in gimple_has_side_effects, at gimple.c:2513)
...
2012-05-22 Richard Guenther <rguenther@suse.de>
PR middle-end/51071
* gcc.dg/torture/pr51071-2.c: New testcase.
From-SVN: r187768
2012-05-22 09:35:32 +00:00
Richard Guenther
27eb31c9de
re PR middle-end/53437 (FAIL: gcc.dg/guality/inline-params.c -O0)
...
2012-05-22 Richard Guenther <rguenther@suse.de>
PR middle-end/53437
* tree-inline.c (setup_one_parameter): Create a dummy init
statement for unused parameters when not optimizing.
From-SVN: r187767
2012-05-22 09:33:42 +00:00
Richard Guenther
3efa0725f4
tree-flow.h (add_referenced_var_1): Declare.
...
2012-05-22 Richard Guenther <rguenther@suse.de>
* tree-flow.h (add_referenced_var_1): Declare.
(add_referenced_var): Define.
* tree-dfa.c (referenced_var_check_and_insert): Avoid one hash
lookup.
(add_referenced_var): Rename to ...
(add_referenced_var_1): ... this. Take struct function argument.
From-SVN: r187766
2012-05-22 09:33:01 +00:00
Ramana Radhakrishnan
95ffee1fce
re PR target/53334 (ICE in extract_insn, at recog.c:2131)
...
Fix PR target/53334
2012-05-22 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
PR target/53334
* config/arm/arm-protos.h (arm_validize_comparison): Declare.
* config/arm/arm.c (arm_validize_comparison): Define.
* config/arm/arm.md ("cbranchsi4"): Cleanup expansion and use
arm_validize_comparison.
("cbranchdi4"): Likewise.
("cstoredi4"): Likewise.
("movsicc"): Likewise.
("movsfcc"): Likewise.
("movdfcc"): Likewise.
From-SVN: r187761
2012-05-22 09:06:55 +00:00
Dimitrios Apostolou
7c2dbbdc48
df-scan.c (df_scan_alloc): Round up allocation pools size, reduce the mw_reg_pool size.
...
2012-05-22 Dimitrios Apostolou <jimis@gmx.net>
* df-scan.c (df_scan_alloc): Round up allocation pools size, reduce
the mw_reg_pool size.
From-SVN: r187760
2012-05-22 08:35:32 +00:00
Paolo Bonzini
819f3b2cfa
re PR tree-optimization/53336 (invalid types in nop conversion)
...
gcc:
2012-05-16 Paolo Bonzini <bonzini@gnu.org>
PR tree-optimization/53336
* tree-cfg.c (verify_gimple_assign_unary): Allow conversion from
non-integer integral types to offset type and vice versa.
gcc/testsuite:
2012-05-16 Paolo Bonzini <bonzini@gnu.org>
PR tree-optimization/53336
* g++.dg/torture/pr53336.C: New testcase.
From-SVN: r187759
2012-05-22 08:31:52 +00:00
Paolo Bonzini
7caf4b0caa
fix paths in previous ChangeLog entry
...
From-SVN: r187758
2012-05-22 08:29:10 +00:00
Dodji Seketeli
650dc14a73
PR c++/53322 - -Wunused-local-typedefs is not enabled by Wall or Wunused
...
As the audit trail of this shows, -Wunused-local-typedefs is not
turned on by -Wunused after all. Sigh.
Now that we have the EnabledBy construct for the *.opt files, it's
more precise and concise to use that to make -Wunused-local-typedefs
be triggered by -Wunused.
I have changed the gcc+.dg/warn/Wunused-local-typedefs.C test case to
make it use -Wunused instead of -Wunused-local-typedefs. I had to
adjust it to avoid the warnings due to the other -W* options triggered
by -Wunused there.
While testing the compiler, it turned out that some local typedefs
were not being used when the experimental "Concepts" support is turned
off, in the libstdc++ test suite. I also had to remove some obvious
useless local typedef usage in the fortran front-end. Fixed thus.
Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.
gcc/c-family/
PR c++/53322
* c.opt (Wunused-local-typedefs): Use EnabledBy(Wunused).
libstdc++-v3/
PR c++/53322
* include/bits/stl_algobase.h (lower_bound)
(lexicographical_compare): Do not declare unused local typedefs
here when Concepts are turned off.
gcc/fortran/
PR c++/53322
* f95-lang.c (gfc_init_builtin_functions): Remove the unused
typedef builtin_type.
gcc/testsuite/
PR c++/53322
* g++.dg/warn/Wunused-local-typedefs.C: Adjust to use -Wunused
instead of -Wunused-local-typedefs.
From-SVN: r187757
2012-05-22 05:50:26 +02:00
GCC Administrator
00d7b6e2c4
Daily bump.
...
From-SVN: r187755
2012-05-22 00:18:48 +00:00
Paolo Carlini
d847ec803d
9780-2.cc: Avoid -Wall warnings.
...
2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
* testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
* Likewise.
* testsuite/23_containers/unordered_map/observers.cc: Likewise.
* testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
* testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
* testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
* testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
* testsuite/23_containers/unordered_set/observers.cc: Likewise.
* testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
* testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
* Likewise.
* testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
From-SVN: r187751
2012-05-21 23:40:55 +00:00
Alan Modra
c5e0766b42
aix.h (FP_SAVE_INLINE, [...]): Delete.
...
* aix.h (FP_SAVE_INLINE, GP_SAVE_INLINE): Delete.
* darwin.h (FP_SAVE_INLINE, GP_SAVE_INLINE): Delete.
* sysv4.h (FP_SAVE_INLINE, GP_SAVE_INLINE, V_SAVE_INLINE): Delete.
* config/rs6000/rs6000.c (V_SAVE_INLINE): Delete.
(rs6000_savres_strategy): Reimplement GP/FP/V_SAVE_INLINE logic.
For ELF targets, use out-of-line restores for -Os and any number
of regs if the restore exits, and out-of-line gp save for two or
more regs. Use save_reg_p to test for holes in reg restore set.
Replace "#if" with "if".
From-SVN: r187750
2012-05-22 08:25:09 +09:30
Alan Modra
bbd72c2fe7
rs6000.c (save_reg_p): New function.
...
* config/rs6000/rs6000.c (save_reg_p): New function.
(first_reg_to_save, first_fp_reg_to_save): Use it here.
(first_altivec_reg_to_save, restore_saved_cr): Likewise.
(emit_frame_save): Use gen_frame_store.
(gen_frame_mem_offset): Correct SPE condition requiring reg+reg.
(rs6000_emit_prologue): Use save_reg_p. Use gen_frame_store for
vrsave and toc.
(rs6000_emit_epilogue): Use save_reg_p. Use gen_frame_load for
vrsave, toc, gp and fp restores.
From-SVN: r187749
2012-05-22 08:21:38 +09:30
Alan Modra
e1968bbaad
rs6000.c: Delete unnecessary forward declarations.
...
* config/rs6000/rs6000.c: Delete unnecessary forward declarations.
Move those with ATTRIBUTE_UNUSED to immediately before definitions.
Move function pointer variables after forward declarations.
(rs6000_builtin_support_vector_misalignment): Make static.
(rs6000_legitimate_address_p, rs6000_gimplify_va_arg): Likewise.
(rs6000_function_value, rs6000_can_eliminate): Likewise.
From-SVN: r187748
2012-05-22 08:19:51 +09:30
Patrick Marlier
f2f9a0977a
eh_cpp.cc: Fix __cxa_end_catch declaration.
...
2012-05-21 Patrick Marlier <patrick.marlier@gmail.com>
* eh_cpp.cc: Fix __cxa_end_catch declaration.
From-SVN: r187747
2012-05-21 22:48:00 +00:00