OSDN Git Service

pf3gnuchains/gcc-fork.git
13 years ago2010-03-21 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 21 Mar 2011 07:14:42 +0000 (07:14 +0000)]
2010-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/22572
* gfortran.h (gfc_option_t) : Add
flag_aggressive_function_elimination.
(gfc_dep_compare_functions):  Add prototype.
* lang.opt: Add faggressive-function-elimination.
* invoke.texi: Document -faggressive-function-elimination.
* frontend_passes (expr_array):  New static variable.
(expr_size):  Likewise.
(expr_count):  Likewise.
(current_code):  Likewise.
(current_ns):  Likewise.
(gfc_run_passes):  Allocate and free space for expressions.
(cfe_register_funcs):  New function.
(create_var):  New function.
(cfc_expr_0):  New function.
(cfe_code):  New function.
(optimize_namespace):  Invoke gfc_code_walker with cfe_code
and cfe_expr_0.
* dependency.c (gfc_dep_compare_functions):  New function.
(gfc_dep_compare_expr):  Use it.
* options.c (gfc_init_options):  Handle
flag_aggressive_function_elimination.
(gfc_handle_option):  Likewise.

2010-03-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/22572
* gfortran.dg/function_optimize_1.f90:  New test.
* gfortran.dg/function_optimize_2.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171207 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix typo in comment.
xmj [Mon, 21 Mar 2011 06:25:44 +0000 (06:25 +0000)]
Fix typo in comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171206 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAdd 2 testcases for PR rtl-optimization/47502.
hjl [Mon, 21 Mar 2011 03:28:40 +0000 (03:28 +0000)]
Add 2 testcases for PR rtl-optimization/47502.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171205 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Mon, 21 Mar 2011 00:18:49 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171202 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR bootstrap/48168
ebotcazou [Sun, 20 Mar 2011 21:50:20 +0000 (21:50 +0000)]
PR bootstrap/48168
* config/sparc/sparc.c (sparc_delegitimize_address): Add new pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171197 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/48156
jakub [Sun, 20 Mar 2011 15:25:55 +0000 (15:25 +0000)]
PR rtl-optimization/48156
* df-core.c (df_get_bb_dirty): Use df_lr if df_live is NULL,
assume df and df_lr are not NULL.

* gcc.dg/pr48156.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171195 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoFix PR debug/48203
ramana [Sun, 20 Mar 2011 07:59:54 +0000 (07:59 +0000)]
Fix PR debug/48203

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171193 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sun, 20 Mar 2011 00:17:57 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171190 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/sh.c (find_barrier): Don't emit a constant pool
kkojima [Sat, 19 Mar 2011 23:22:18 +0000 (23:22 +0000)]
* config/sh/sh.c (find_barrier): Don't emit a constant pool
between a call and its corresponding CALL_ARG_LOCATION note.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171185 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 19 Mar 2011 19:49:16 +0000 (19:49 +0000)]
2011-03-19  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/lib/libstdc++.exp (check_v3_target_c99_math): Rename
to check_v3_target_cmath.
* testsuite/lib/dg-options.exp (dg-require-c99_math): Rename
to dg-require-cmath.
* testsuite/26_numerics/random/binomial_distribution/
operators/values.cc: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171184 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * cfgcleanup.c (mark_effect): Use bitmap_set_range/bitmap_clear_range
aesok [Sat, 19 Mar 2011 17:33:45 +0000 (17:33 +0000)]
* cfgcleanup.c (mark_effect): Use bitmap_set_range/bitmap_clear_range
instead of loop. Use HARD_REGISTER_NUM_P predicate.
* haifa-sched.c (setup_ref_regs): Ditto.
* caller-save.c (add_used_regs_1): Ditto.
* dse.c (look_for_hardregs): Ditto.
* df-problems.c (df_simulate_one_insn_forwards): Ditto.
* sched-rgn.c (check_live_1): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171183 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR fortran/35667
danglin [Sat, 19 Mar 2011 17:25:18 +0000 (17:25 +0000)]
PR fortran/35667
* io/io.h (convert_infnan): Declare.
* io/read.c (convert_infnan): New.
(read_f): Use convert_infnan to convert INFs and NANs.
* list_read.c (parse_real, read_real): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171182 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR libfortran/47439
fxcoudert [Sat, 19 Mar 2011 14:35:05 +0000 (14:35 +0000)]
PR libfortran/47439
* gfortran.dg/scratch_1.f90: Adjust test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171180 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR libfortran/47439
fxcoudert [Sat, 19 Mar 2011 12:09:27 +0000 (12:09 +0000)]
PR libfortran/47439

* io/unix.c (tempfile): Work around poor mktemp() implementations.

* gfortran.dg/scratch_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171178 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Sat, 19 Mar 2011 00:18:08 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171177 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * c-decl.c (diagnose_mismatched_decls): Give an error for
jsm28 [Fri, 18 Mar 2011 23:26:16 +0000 (23:26 +0000)]
* c-decl.c (diagnose_mismatched_decls): Give an error for
redefining a typedef with variably modified type.

testsuite:
* gcc.dg/c1x-typedef-1.c: Expect errors for redefinitions of
variably modified typedefs.
* gcc.dg/c1x-typedef-2.c: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171172 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * c-decl.c (grokfield): Don't allow typedefs for structures or
jsm28 [Fri, 18 Mar 2011 21:16:31 +0000 (21:16 +0000)]
* c-decl.c (grokfield): Don't allow typedefs for structures or
unions with no tag by default.
* doc/extend.texi (Unnamed Fields): Update.

testsuite:
* gcc.dg/c1x-anon-struct-1.c: Don't test use of typedefs.
* gcc.dg/c1x-anon-struct-3.c: New test.
* gcc.dg/anon-struct-11.c: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171170 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/i386.md (float<SSEMODEI24:mode><X87MODEF:mode>2):
uros [Fri, 18 Mar 2011 20:54:25 +0000 (20:54 +0000)]
* config/i386/i386.md (float<SSEMODEI24:mode><X87MODEF:mode>2):
Rewrite using indirect functions.
(lwp_slwpcb): Ditto.
* config/i386/sse.md (avx_vextractf128<mode>): Ditto.
(avx_vinsertf128<mode>): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171169 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agotweak fconstexpr-depth docs
jason [Fri, 18 Mar 2011 20:27:33 +0000 (20:27 +0000)]
tweak fconstexpr-depth docs

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171168 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
jason [Fri, 18 Mar 2011 20:23:48 +0000 (20:23 +0000)]
* c.opt (fconstexpr-depth): Add Var(max_constexpr_depth).
* c-common.h: Don't declare it here.
* c-common.c: Or define it here.
* c-opts.c (c_common_handle_option): Or set it here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171166 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR bootstrap/45381
rth [Fri, 18 Mar 2011 20:20:35 +0000 (20:20 +0000)]
PR bootstrap/45381
* lex.c [ALTIVEC] (search_line_fast): Require gcc version 4.5.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171165 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * mixed-mode-arith_neg.cc: Rename from mixed-mode_neg.cc
dnovillo [Fri, 18 Mar 2011 19:54:32 +0000 (19:54 +0000)]
* mixed-mode-arith_neg.cc: Rename from mixed-mode_neg.cc
* mixed-mode-cmp_neg.cc: Factor out of mixed-mode-arith_neg.cc

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171161 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config.guess: Update to version 2011-02-02
dje [Fri, 18 Mar 2011 17:42:07 +0000 (17:42 +0000)]
    * config.guess: Update to version 2011-02-02
        * config.sub: Update to version 2011-02-24

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171158 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 18 Mar 2011 17:32:29 +0000 (17:32 +0000)]
2011-03-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_delegitimize_address): Handle GOTOFF
unspecs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171157 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 18 Mar 2011 17:31:39 +0000 (17:31 +0000)]
2011-03-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_chunkify_start): Prevent literal pool
splitting between a call and its corresponding CALL_ARG_LOCATION
note.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171156 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/48170
mkuvyrkov [Fri, 18 Mar 2011 17:12:19 +0000 (17:12 +0000)]
PR rtl-optimization/48170
* gcse.c (hoist_code): Remove bogus asserts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171155 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost
law [Fri, 18 Mar 2011 17:05:27 +0000 (17:05 +0000)]
* ira-color.c (assign_hard_reg): Honor LOCAL_REGNO in cost
computation for prologue/epilogue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171154 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Makefile.in (check-consistency): Remove.
ro [Fri, 18 Mar 2011 16:58:25 +0000 (16:58 +0000)]
* Makefile.in (check-consistency): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171153 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/vect/slp-multitypes-2.c: Replace dg-do run with
ro [Fri, 18 Mar 2011 16:23:39 +0000 (16:23 +0000)]
* gcc.dg/vect/slp-multitypes-2.c: Replace dg-do run with
dg-xfail-run-if.
Only xfail with gas.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171152 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR debug/48176
jakub [Fri, 18 Mar 2011 16:18:05 +0000 (16:18 +0000)]
PR debug/48176
* dwarf2out.c (dwarf2out_finish): Call output_aranges even when
arange_table_in_use is 0, but either text_section_used or
cold_text_section_used is true.  Don't call it if
!info_section_emitted.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171150 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/avr/avr.h (RET_REGISTER, LIBCALL_VALUE,
aesok [Fri, 18 Mar 2011 15:27:10 +0000 (15:27 +0000)]
* config/avr/avr.h (RET_REGISTER, LIBCALL_VALUE,
FUNCTION_VALUE_REGNO_P): Remove.
* config/avr/avr-protos.h (avr_ret_register, avr_libcall_value):
Remove.
* config/avr/avr.c (avr_ret_register): Make static inline.
(avr_function_value_regno_p): New function.
(avr_libcall_value): Make static. Add 'func' argument.
(avr_function_value): Make static. Rename 'func' argument to
'fn_decl_or_type', forward it to avr_libcall_value. Call
avr_ret_register function instead of RET_REGISTER macro.
  (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171149 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48162
jason [Fri, 18 Mar 2011 15:07:13 +0000 (15:07 +0000)]
PR c++/48162
* semantics.c (finish_call_expr): Allow TARGET_EXPR for now.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171148 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48118
jason [Fri, 18 Mar 2011 15:07:04 +0000 (15:07 +0000)]
PR c++/48118
* call.c (build_over_call): Don't skip ck_rvalue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171147 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/23372
jason [Fri, 18 Mar 2011 15:06:51 +0000 (15:06 +0000)]
PR c++/23372
* gimplify.c (gimplify_arg): Strip redundant TARGET_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171146 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/35315
jason [Fri, 18 Mar 2011 15:06:41 +0000 (15:06 +0000)]
PR c++/35315
* c-common.c (handle_transparent_union_attribute): Don't
make a duplicate type in C++.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171145 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 18 Mar 2011 14:33:45 +0000 (14:33 +0000)]
2011-03-18  Richard Guenther  <rguenther@suse.de>

* doc/install.texi (--enable-gold): Remove.
(--with-plugin-ld): Document.
* doc/invoke.texi (-fuse-linker-plugin): Clarify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171143 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/47405
ro [Fri, 18 Mar 2011 14:10:35 +0000 (14:10 +0000)]
PR middle-end/47405
* gcc.dg/torture/20090618-1.c: Skip on mips-sgi-irix*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171140 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/47790
law [Fri, 18 Mar 2011 14:01:41 +0000 (14:01 +0000)]
PR middle-end/47790
* expr.c (optimize_bitfield_assignment_op): Revamp to work
again after expansion changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171139 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Fri, 18 Mar 2011 13:22:42 +0000 (13:22 +0000)]
2011-03-18  Chung-Lin Tang  <cltang@codesourcery.com>

* combine.c (try_combine): Do simplification only call of
subst() on i2 even when i1 is present. Update comments.

testsuite/
* gcc.target/arm/unsigned-extend-1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171138 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 18 Mar 2011 13:09:29 +0000 (13:09 +0000)]
2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>

Fixup last ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171137 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/sh.c (sh_delegitimize_address): Handle UNSPEC_SYMOFF
kkojima [Fri, 18 Mar 2011 12:19:50 +0000 (12:19 +0000)]
* config/sh/sh.c (sh_delegitimize_address): Handle UNSPEC_SYMOFF
and UNSPEC_PCREL_SYMOFF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171134 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 18 Mar 2011 11:48:29 +0000 (11:48 +0000)]
2011-03-18  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/util/testsuite_random.h: New.
* testsuite/lib/libstdc++.exp (check_v3_target_c99_math,
dg-require-c99_math): Add.
* testsuite/26_numerics/random/bernoulli_distribution/
operators/values.cc: New.
* testsuite/26_numerics/random/binomial_distribution/
operators/values.cc: Likewise.
* testsuite/26_numerics/random/geometric_distribution/
operators/values.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171133 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Fri, 18 Mar 2011 11:30:26 +0000 (11:30 +0000)]
2011-03-18  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.md: Use define_c_enum for the unspec constant
definitions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171132 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR bootstrap/48161
jakub [Fri, 18 Mar 2011 08:35:17 +0000 (08:35 +0000)]
PR bootstrap/48161
* expr.c (expand_expr_addr_expr_1): Use simplify_gen_binary
instead of gen_rtx_PLUS if EXPAND_SUM or EXPAND_INITIALIZER.

* gcc.c-torture/compile/pr48161.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171126 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRevert the last change on cant_combine_insn_p.
hjl [Fri, 18 Mar 2011 04:02:25 +0000 (04:02 +0000)]
Revert the last change on cant_combine_insn_p.

2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/47725
* combine.c (cant_combine_insn_p): Don't check zero/sign
extended hard registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171125 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoCheck zero/sign extended hard registers.
hjl [Fri, 18 Mar 2011 00:29:15 +0000 (00:29 +0000)]
Check zero/sign extended hard registers.

gcc/

2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/47725
* combine.c (cant_combine_insn_p): Check zero/sign extended
hard registers.

gcc/testsuite/

2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/47725
* gcc.dg/torture/pr47725.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171124 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Fri, 18 Mar 2011 00:18:53 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171123 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/v850/v850.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
aesok [Thu, 17 Mar 2011 22:02:00 +0000 (22:02 +0000)]
* config/v850/v850.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
* config/v850/v850-protos.h (v850_output_addr_const_extra): Remove.
* config/v850/v850.c (v850_output_addr_const_extra): Make static.
Change return type to bool.
(TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171117 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47504
jason [Thu, 17 Mar 2011 22:00:47 +0000 (22:00 +0000)]
PR c++/47504
* semantics.c (cxx_eval_constant_expression) [NOP_EXPR]: Don't let
the conversion set TREE_OVERFLOW.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171116 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR debug/48163
jakub [Thu, 17 Mar 2011 20:34:59 +0000 (20:34 +0000)]
PR debug/48163
* var-tracking.c (prepare_call_arguments): If CALL target
is a non-SYMBOL_REF CONSTANT_P, just add that into the list as
pc instead of looking it up using cselib_lookup and use
Pmode for it if x has VOIDmode.
* dwarf2out.c (gen_subprogram_die): If also both first and
second CONCAT arguments are VOIDmode, use mode of CONCAT itself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171114 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR debug/48163
jakub [Thu, 17 Mar 2011 20:33:54 +0000 (20:33 +0000)]
PR debug/48163
* function.c (assign_parms): For data.passed_pointer parms
use MEM of data.entry_parm instead of data.entry_parm itself
as DECL_INCOMING_RTL.
* dwarf2out.c (rtl_for_decl_location): Use DECL_INCOMING_RTL
also when passed and declared mode is the same, DECL_RTL
is a MEM with pseudo as address and DECL_INCOMING_RTL is
a MEM too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171113 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/37273
law [Thu, 17 Mar 2011 20:08:01 +0000 (20:08 +0000)]
PR rtl-optimization/37273
* ira-costs.c (scan_one_insn): Detect constants living in memory and
handle them like argument loads from stack slots.  Do not double
count memory for memory constants and argument loads from stack slots.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171111 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.pot: Regenerate.
jsm28 [Thu, 17 Mar 2011 19:57:48 +0000 (19:57 +0000)]
* gcc.pot: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171109 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoCheck SUBREG in prepare_call_arguments.
hjl [Thu, 17 Mar 2011 19:51:03 +0000 (19:51 +0000)]
Check SUBREG in prepare_call_arguments.

2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>

PR debug/48160
* var-tracking.c (prepare_call_arguments): Check SUBREG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171108 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAdd Save to -mavx and -mfma.
hjl [Thu, 17 Mar 2011 19:23:34 +0000 (19:23 +0000)]
Add Save to -mavx and -mfma.

2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>

PR target/48171
* config/i386/i386.opt: Add Save to -mavx and -mfma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171107 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc-interface/decl.c (elaborate_expression_1): Try harder to find
ebotcazou [Thu, 17 Mar 2011 17:12:21 +0000 (17:12 +0000)]
* gcc-interface/decl.c (elaborate_expression_1): Try harder to find
out whether the expression is read-only.  Short-circuit placeholder
case and rename a couple of local variables.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171106 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago Core 1212
jason [Thu, 17 Mar 2011 16:20:16 +0000 (16:20 +0000)]
Core 1212
* semantics.c (finish_decltype_type): Return T&& for xvalue.
* typeck.c (unlowered_expr_type): Preserve cv-quals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171104 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48166
jason [Thu, 17 Mar 2011 16:02:08 +0000 (16:02 +0000)]
PR c++/48166
* decl.c (revert_static_member_fn): Strip function-cv-quals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171103 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR bootstrap/48153
jakub [Thu, 17 Mar 2011 15:22:20 +0000 (15:22 +0000)]
PR bootstrap/48153
* dwarf2out.c (mem_loc_descriptor) <case ENTRY_VALUE>: Return NULL
if dwarf_strict.
(gen_subprogram_die): Don't add call_site DIEs if dwarf_strict.
Clear call_arg_locations and call_arg_loc_last always.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171102 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/48152
jakub [Thu, 17 Mar 2011 15:21:39 +0000 (15:21 +0000)]
PR middle-end/48152
* var-tracking.c (prepare_call_arguments): If argument needs to be
passed by reference, adjust argtype and mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171101 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-17 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 17 Mar 2011 14:59:00 +0000 (14:59 +0000)]
2011-03-17  Richard Guenther  <rguenther@suse.de>

PR middle-end/48134
* tree-ssa.c (insert_debug_temp_for_var_def): If we propagated
a value make sure to fold the statement.

* gcc.dg/pr48134.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171098 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-17 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Thu, 17 Mar 2011 14:02:12 +0000 (14:02 +0000)]
2011-03-17  Chung-Lin Tang  <cltang@codesourcery.com>

PR target/43872
* config/arm/arm.c (arm_get_frame_offsets): Adjust early
return condition with !cfun->calls_alloca.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171096 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-17 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 17 Mar 2011 13:25:23 +0000 (13:25 +0000)]
2011-03-17  Richard Guenther  <rguenther@suse.de>

PR bootstrap/48148
* lto-cgraph.c (input_overwrite_node): Clear the abstract
origin for decls in other ltrans units.
(input_varpool_node): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171094 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-17 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 17 Mar 2011 13:19:01 +0000 (13:19 +0000)]
2011-03-17  Richard Guenther  <rguenther@suse.de>

PR middle-end/48165
* tree-object-size.c (compute_object_offset): Properly return
the offset operand of MEM_REFs as sizetype.

* g++.dg/torture/pr48165.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171092 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc-interface/gigi.h (smaller_form_type_p): Declare.
ebotcazou [Thu, 17 Mar 2011 12:37:53 +0000 (12:37 +0000)]
* gcc-interface/gigi.h (smaller_form_type_p): Declare.
* gcc-interface/trans.c (smaller_form_type_p): Make global and move...
* gcc-interface/utils.c (smaller_form_type_p): ...to here.
(convert): Deal with conversions from a smaller form type specially.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171091 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/48141
jakub [Thu, 17 Mar 2011 12:36:04 +0000 (12:36 +0000)]
PR rtl-optimization/48141
* params.def (PARAM_MAX_DSE_ACTIVE_LOCAL_STORES): New.
* dse.c: Include params.h.
(active_local_stores_len): New variable.
(add_wild_read, dse_step1): Clear it when setting active_local_stores
to NULL.
(record_store, check_mem_read_rtx): Decrease it when removing
from the chain.
(scan_insn): Likewise.  Increase it when adding to chain, if it
reaches PARAM_MAX_DSE_ACTIVE_LOCAL_STORES limit, set to 1 and
set active_local_stores to NULL before the addition.
* Makefile.in (dse.o): Depend on $(PARAMS_H).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171090 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/48141
jakub [Thu, 17 Mar 2011 12:35:04 +0000 (12:35 +0000)]
PR rtl-optimization/48141
* dse.c (record_store): If no positions are needed in an insn
that cannot be deleted, at least unchain it from active_local_stores.

* gcc.dg/pr48141.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171089 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48089
jason [Thu, 17 Mar 2011 02:36:29 +0000 (02:36 +0000)]
PR c++/48089
* semantics.c (potential_constant_expression_1): Don't allow *this
in a constructor.
(register_constexpr_fundef): Use potential_rvalue_constant_expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171086 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47301
jason [Thu, 17 Mar 2011 02:36:20 +0000 (02:36 +0000)]
PR c++/47301
* decl.c (compute_array_index_type): Don't bother trying to deal
with literal classes in ABI v1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171085 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/46336
jason [Thu, 17 Mar 2011 02:36:12 +0000 (02:36 +0000)]
PR c++/46336
* decl.c (duplicate_decls): Return NULL_TREE for clashing
C functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171084 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47570
jason [Thu, 17 Mar 2011 02:36:04 +0000 (02:36 +0000)]
PR c++/47570
* semantics.c (cxx_eval_constant_expression) [COMPOUND_EXPR]: Don't
use the generic binary expression handling.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171083 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Thu, 17 Mar 2011 00:18:12 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171082 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDon't catch LIBPROF in Go code.
ian [Wed, 16 Mar 2011 23:18:40 +0000 (23:18 +0000)]
Don't catch LIBPROF in Go code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171077 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoUpdate to current version of Go library (revision 94d654be2064).
ian [Wed, 16 Mar 2011 23:05:44 +0000 (23:05 +0000)]
Update to current version of Go library (revision 94d654be2064).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171076 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Make-lang.in (CXX_PARSER_H): New.
dnovillo [Wed, 16 Mar 2011 22:03:56 +0000 (22:03 +0000)]
* Make-lang.in (CXX_PARSER_H): New.
(cp/parser.o): Add dependency on CXX_PARSER_H.
Add dependency on tree-pretty-print.h
(cp/cp-lang.o): Add dependency on CXX_PARSER_H.
* cp-lang.c: Include parser.h.
* parser.c: Include parser.h.
(struct cp_token): Add bitfield purged_p.
Update all users.
Move to parser.h.
(CPP_PURGED): Remove.  Update all users.
(struct cp_lexer): Change field buffer to be a VEC of cp_token.
Remove field buffer_length.
Update all users.
Move to parser.h.
(struct tree_check): Move to parser.h.
(cp_token_position): Likewise.
(struct cp_token_cache): Likewise.
(CPP_KEYWORD): Likewise.
(CPP_TEMPLATE_ID): Likewise.
(CPP_NESTED_NAME_SPECIFIER): Likewise.
(N_CP_TTYPES): Likewise.
(enum cp_parser_status_kind): Likewise.
(struct cp_parser_context): Likewise.
(struct cp_default_arg_entry_d): Likewise.
(struct cp_unparsed_functions_entry_d): Likewise.
(struct cp_parser): Likewise.
(cp_lexer_dump_tokens): New.
(cp_lexer_debug_tokens): New.
(cp_lexer_finished_p): New.
(cp_lexer_alloc): Factor out of cp_lexer_new_main.
(cp_lexer_new_main): Re-write main lexing loop to push
tokens into the new VEC buffer.
(cp_lexer_print_token): Improve printing of CPP_NUMBER tokens.
Do not abort if the token type is not recognized, just print
its code.
* parser.h: New file.
* config-lang.in (gtfiles): Add cp/parser.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171075 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR debug/47510
dodji [Wed, 16 Mar 2011 21:04:58 +0000 (21:04 +0000)]
PR debug/47510

gcc/

PR debug/47510
* dwarf2out.c (strip_naming_typedef): Factorize out of ...
(lookup_type_die_strip_naming_typedef): ... here.
(get_context_die): Use it.
(gen_typedef_die): Add a DW_AT_{,MIPS_}linkage_name attribute to
the anonymous struct named by the naming typedef.

gcc/testsuite/

        PR debug/47510
* g++.dg/debug/dwarf2/typedef6.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171073 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago Core 1148
jason [Wed, 16 Mar 2011 20:15:37 +0000 (20:15 +0000)]
Core 1148
* typeck.c (check_return_expr): Fix conditions for setting
LOOKUP_PREFER_RVALUE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171071 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * call.c (build_over_call): Remove require_complete_type_sfinae call.
jason [Wed, 16 Mar 2011 20:15:24 +0000 (20:15 +0000)]
* call.c (build_over_call): Remove require_complete_type_sfinae call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171070 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoCheck TARGET_ROUND for BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.
hjl [Wed, 16 Mar 2011 20:04:40 +0000 (20:04 +0000)]
Check TARGET_ROUND for BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.

2011-03-16  H.J. Lu  <hongjiu.lu@intel.com>

PR target/48154
* config/i386/i386.c (ix86_builtin_vectorized_function): Check
TARGET_ROUND for BUILT_IN_{FLOOR,CEIL,TRUNC,RINT}{,F} builtins.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171069 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48132
jason [Wed, 16 Mar 2011 20:04:06 +0000 (20:04 +0000)]
PR c++/48132
* decl.c (check_array_designated_initializer): Allow integer index.
(reshape_init_array_1): Set index on the elements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171068 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48113
jason [Wed, 16 Mar 2011 20:03:56 +0000 (20:03 +0000)]
PR c++/48113
* typeck.c (convert_for_initialization): Use
perform_implicit_conversion_flags.
* call.c (standard_conversion): If LOOKUP_PREFER_RVALUE, set
rvaluedness_matches_p on ck_rvalue.
(convert_like_real) [ck_rvalue]: And restore it here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171067 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/48115
jason [Wed, 16 Mar 2011 20:03:46 +0000 (20:03 +0000)]
PR c++/48115
* call.c (convert_arg_to_ellipsis): Handle incomplete type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171066 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Jack Howarth <howarth@bromo.med.uc.edu>
mrs [Wed, 16 Mar 2011 18:19:12 +0000 (18:19 +0000)]
2011-03-16  Jack Howarth  <howarth@bromo.med.uc.edu>

PR lto/48086
* configure.ac: Re-enable LTO on *-apple-darwin9.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171058 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR libfortran/47883
fxcoudert [Wed, 16 Mar 2011 17:43:41 +0000 (17:43 +0000)]
PR libfortran/47883
* acinclude.m4: Don't use AC_TRY_ macros.
* configure.ac: Likewise.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171056 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree-vrp.c (identify_jump_threads): Slightly simplify type
law [Wed, 16 Mar 2011 17:32:58 +0000 (17:32 +0000)]
  * tree-vrp.c (identify_jump_threads): Slightly simplify type
  check for operands of conditional.  Allow type to be a
  pointer.

  * gcc.dg/tree-ssa/vrp55.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171055 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * parser.c (cp_parser_abort_tentative_parse): Make sure we haven't
jason [Wed, 16 Mar 2011 17:04:41 +0000 (17:04 +0000)]
* parser.c (cp_parser_abort_tentative_parse): Make sure we haven't
committed to this tentative parse.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171054 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/47999
jason [Wed, 16 Mar 2011 17:04:30 +0000 (17:04 +0000)]
PR c++/47999
* semantics.c (finish_call_expr): Preserve reference semantics
in templates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171053 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * call.c (convert_default_arg): Use LOOKUP_IMPLICIT.
jason [Wed, 16 Mar 2011 17:00:13 +0000 (17:00 +0000)]
* call.c (convert_default_arg): Use LOOKUP_IMPLICIT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171052 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 16:51:35 +0000 (16:51 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

* gcc.dg/guality/vla-1.c (main): Use result of f1 to avoid
optimizing it away if promoted to const.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171050 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 16 Mar 2011 16:05:45 +0000 (16:05 +0000)]
2011-03-16  Benjamin Kosnik  <bkoz@redhat.com>

* config/abi/pre/gnu.ver: Add base destructors for stdexcept classes.
* testsuite/19_diagnostics/stdexcept.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171049 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 15:55:48 +0000 (15:55 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48149
* fold-const.c (fold_binary_loc): Fold
COMPLEX_EXPR <REALPART_EXPR <x>, IMAGPART_EXPR <x>>.

* gcc.dg/fold-complex-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171048 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 13:57:28 +0000 (13:57 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

PR testsuite/48147
* gcc.dg/guality/pr45882.c: Really make sure no inlining
or cloning happens.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171047 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 13:53:09 +0000 (13:53 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/26134
* tree-ssa.c (maybe_rewrite_mem_ref_base): Handle rewriting
complex part accesses to REALPART_EXPR and IMAGPART_EXPR.
(non_rewritable_mem_ref_base): Handle complex type component
accesses, constrain offsets for vector and complex extracts
more properly.

* gcc.dg/tree-ssa/complex-6.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171046 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 12:41:08 +0000 (12:41 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/48146
* tree-ssa-sink.c (sink_code_in_bb): Manually update virtual
operands avoiding the need for renaming.

* gcc.dg/torture/pr48146.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171045 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-03-16 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 16 Mar 2011 11:36:30 +0000 (11:36 +0000)]
2011-03-16  Richard Guenther  <rguenther@suse.de>

* gimple-fold.c (maybe_fold_reference): Open-code relevant
constant folding.  Move MEM_REF canonicalization first.
Rely on fold_const_aggregate_ref for initializer folding.
* tree-ssa-ccp.c (ccp_fold): Handle constant vector extracts.

* gcc.dg/tree-ssa/pr14814.c: Adjust.
* gcc.dg/tree-ssa/ssa-ccp-19.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171043 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR middle-end/48136
jakub [Wed, 16 Mar 2011 10:24:44 +0000 (10:24 +0000)]
PR middle-end/48136
* fold-const.c (fold_binary_loc) <case EQ_EXPR, NE_EXPR>: Make sure
arg0/arg1 or their arguments are always fold converted to matching
types.

* gcc.c-torture/compile/pr48136.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171041 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * var-tracking.c (prepare_call_arguments): Add ATTRIBUTE_UNUSED
jakub [Wed, 16 Mar 2011 10:23:14 +0000 (10:23 +0000)]
* var-tracking.c (prepare_call_arguments): Add ATTRIBUTE_UNUSED
to nargs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171040 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR lto/46944
ro [Wed, 16 Mar 2011 09:41:16 +0000 (09:41 +0000)]
PR lto/46944
* configure.ac (gcc_cv_gld_major_version, gcc_cv_gld_minor):
Handle in-tree gold.
(ld_vers): Extract binutils version for gold.
(gcc_cv_ld_hidden): Handle gold here.
(gcc_cv_lto_plugin): Determine level of linker plugin support.
* configure: Regenerate.
* config.in: Regenerate.
* gcc.c: Only use LTO plugin if HAVE_LTO_PLUGIN > 0, reject
-fuse-linker-plugin otherwise.
(LINK_PLUGIN_SPEC): Define.  Extract from LINK_COMMAND_SPEC.
(LINK_COMMAND_SPEC): Use it.
(main): Only look for LTOPLUGINSONAME if HAVE_LTO_PLUGIN > 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171039 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * emit-rtl.c (try_split): Don't call copy_call_info debug hook.
jakub [Wed, 16 Mar 2011 08:40:07 +0000 (08:40 +0000)]
* emit-rtl.c (try_split): Don't call copy_call_info debug hook.
* calls.c: Remove debug.h include.
(emit_call_1): Don't call virtual_call_token debug hook.
* dwarf2out.c (debug_dcall_section, debug_vcall_section,
dcall_entry, vcall_entry, dcall_table, vcall_table, vcall_insn,
vcall_insn_table, DEBUG_DCALL_SECTION, DEBUG_VCALL_SECTION,
size_of_dcall_table, output_dcall_table, size_of_vcall_table,
output_vcall_table, dwarf2out_direct_call, vcall_insn_table_hash,
vcall_insn_table_eq, store_vcall_insn, lookup_vcall_insn,
dwarf2out_virtual_call_token, dwarf2out_copy_call_info,
dwarf2out_virtual_call): Remove.
(dwarf2_debug_hooks): Remove direct_call, virtual_call_token,
copy_call_info and virtual_call hooks.
(dwarf2out_init): Don't initialize vcall_insn_table,
debug_dcall_section and debug_vcall_section.
(prune_unused_types): Don't mark nodes from dcall_table.
(dwarf2out_finish): Don't output dcall or vcall tables.
* final.c (final_scan_insn): Don't call direct_call or
virtual_call debug hooks.
* debug.h (struct gcc_debug_hooks): Remove direct_call,
virtual_call_token, copy_call_info and virtual_call hooks.
(debug_nothing_uid): Remove prototype.
* sdbout.c (sdb_debug_hooks): Remove direct_call, virtual_call_token,
copy_call_info and virtual_call hooks.
* vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
* dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Likewise.
* debug.c (do_nothing_debug_hooks): Likewise.
(debug_nothing_uid): Remove.
* doc/invoke.texi (-fenable-icf-debug): Remove.
* common.opt (-fenable-icf-debug): Likewise.

* g++.dg/debug/dwarf2/icf.C: Adjust for -fenable-icf-debug removal.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171037 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * calls.c (emit_call_1): Set MEM_EXPR on call's MEM.
jakub [Wed, 16 Mar 2011 08:36:42 +0000 (08:36 +0000)]
* calls.c (emit_call_1): Set MEM_EXPR on call's MEM.
* var-tracking.c (prepare_call_arguments): Use MEM_EXPR on
call's MEM.  Handle functions returning aggregate through a hidden
first pointer.  For virtual calls add clobbered pc to call arguments
chain.
* dwarf2out.c (gen_subprogram_die): Emit
DW_AT_GNU_call_site_target_clobbered if DW_AT_GNU_call_site_target
can't be emitted.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171036 138bc75d-0d04-0410-961f-82ee72b054a4