Chris Manghane
6f7e0b570a
compiler: Use backend interface for expressions.
...
* go-gcc.cc (Gcc_backend::nil_pointer_expression): New method.
(Gcc_backend::boolean_constant_expression): New method.
(Gcc_backend::zero_expression): Use this->make_expression rather
than tree_to_expr.
(Gcc_backend::var_expression): Likewise.
(Gcc_backend::integer_constant_expression): Likewise.
(Gcc_backend::float_constant_expression): Likewise.
(Gcc_backend::complex_constant_expression): Likewise.
(Gcc_backend::struct_field_expression): Likewise.
(tree_to_type, tree_to_expr, tree_to_stat): Remove functions.
(tree_to_function, tree_to_block): Remove functions.
(type_to_tree, expr_to_tree, stat_to_tree): Remove functions.
(block_to_tree, var_to_tree, function_to_tree): Remove functions.
From-SVN: r210122
2014-05-06 19:28:03 +00:00
Richard Sandiford
3379b71f51
revert: lra-constraints.c (valid_address_p): Move earlier in file.
...
gcc/
Revert:
2014-05-03 Richard Sandiford <rdsandiford@googlemail.com>
* lra-constraints.c (valid_address_p): Move earlier in file.
Add a constraint argument to the address_info version.
(satisfies_memory_constraint_p): New function.
(satisfies_address_constraint_p): Likewise.
(process_alt_operands, curr_insn_transform): Use them.
(process_address): Pass the constraint to valid_address_p when
checking address operands.
From-SVN: r210121
2014-05-06 19:22:16 +00:00
Richard Sandiford
224dbc07a5
lto-cgraph.c (compute_ltrans_boundary): Make node variables local to their respective blocks.
...
gcc/
* lto-cgraph.c (compute_ltrans_boundary): Make node variables local
to their respective blocks. Fix inadvertent use of "node".
From-SVN: r210120
2014-05-06 17:47:15 +00:00
Richard Sandiford
ebe9df675a
boehm.c (mark_reference_fields): Don't update the mask when setting pointer_after_end.
...
gcc/java/
* boehm.c (mark_reference_fields): Don't update the mask when
setting pointer_after_end.
From-SVN: r210119
2014-05-06 17:46:05 +00:00
Richard Sandiford
aa3a12d66e
emit-rtl.c (init_derived_machine_modes): New functionm, split out from...
...
gcc/
* emit-rtl.c (init_derived_machine_modes): New functionm, split
out from...
(init_emit_once): ...here.
* rtl.h (init_derived_machine_modes): Declare.
* toplev.c (do_compile): Call it even if no_backend.
From-SVN: r210118
2014-05-06 17:44:15 +00:00
Kenneth Zadeck
1d60af0867
Update ChangeLogs for wide-int work.
...
Co-Authored-By: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Co-Authored-By: Mike Stump <mikestump@comcast.net>
Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r210116
2014-05-06 16:35:35 +00:00
Kenneth Zadeck
807e902eea
Merge in wide-int.
...
From-SVN: r210113
2014-05-06 16:25:05 +00:00
Chris Manghane
6122336c83
compiler: Store flags for division checks in Gogo object instead of using global variables.
...
* go-c.h (go_create_gogo): Update declaration to add
check_divide_zero and check_divide_overflow parameters.
* go-lang.c (go_langhook_init): Pass new arguments to
go_create_gogo.
From-SVN: r210109
2014-05-06 13:50:01 +00:00
Jan-Benedict Glaw
3134fb1943
avr.c (avr_can_eliminate): Mark unused argument.
...
2014-05-06 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/avr/avr.c (avr_can_eliminate): Mark unused argument.
From-SVN: r210108
2014-05-06 13:48:29 +00:00
Richard Biener
3bea341fbd
tree-pass.h (TODO_verify_ssa, [...]): Remove.
...
2014-05-06 Richard Biener <rguenther@suse.de>
* tree-pass.h (TODO_verify_ssa, TODO_verify_flow,
TODO_verify_stmts, TODO_verify_rtl_sharing): Remove.
(TODO_verify_all): Adjust.
* asan.c: Remove references to TODO_verify_ssa, TODO_verify_flow,
TODO_verify_stmts and TODO_verify_rtl_sharing.
* bb-reorder.c: Likewise.
* cfgexpand.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* function.c: Likewise.
* fwprop.c: Likewise.
* gcse.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* ipa-split.c: Likewise.
* loop-init.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* modulo-sched.c: Likewise.
* postreload-gcse.c: Likewise.
* predict.c: Likewise.
* recog.c: Likewise.
* sched-rgn.c: Likewise.
* store-motion.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-object-size.c: Likewise.
* tree-parloops.c: Likewise.
* tree-pass.h: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* tsan.c: Likewise.
* var-tracking.c: Likewise.
* bt-load.c: Likewise.
* cfgcleanup.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
* config/i386/i386.c: Likewise.
* config/mips/mips.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh_treg_combine.cc: Likewise.
* config/sparc/sparc.c: Likewise.
* dce.c: Likewise.
* dse.c: Likewise.
* final.c: Likewise.
* ifcvt.c: Likewise.
* mode-switching.c: Likewise.
* passes.c: Likewise.
* postreload.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* regrename.c: Likewise.
* web.c: Likewise.
From-SVN: r210106
2014-05-06 13:35:40 +00:00
Richard Biener
b15458becf
c-opts.c (c_common_post_options): For -freestanding...
...
2014-05-06 Richard Biener <rguenther@suse.de>
c-family/
* c-opts.c (c_common_post_options): For -freestanding,
-fno-hosted and -fno-builtin disable pattern recognition
if not enabled explicitely.
From-SVN: r210100
2014-05-06 10:46:18 +00:00
Richard Biener
3d224d46b8
re PR debug/61070 (debug_bitmap writes to stdout)
...
2014-05-06 Richard Biener <rguenther@suse.de>
PR middle-end/61070
* bitmap.c (debug_bitmap): Dump to stderr, not stdout.
* tree-ssa-structalias.c (dump_solution_for_var): Likewise.
From-SVN: r210098
2014-05-06 08:30:57 +00:00
Ian Lance Taylor
6f07319115
compiler: Fix bug in embedded method handling.
...
If the same type was embedded in a struct at different levels,
only the first embedded instance was considered when building
the set of all methods. A second instance was ignored, even
if it was at a higher level and should therefore override the
first instance.
Test case is bug485.go in master repository.
From-SVN: r210096
2014-05-06 05:33:31 +00:00
Ian Lance Taylor
0c2b1bb7b6
compiler: Use backend interface for array length.
...
From-SVN: r210093
2014-05-06 01:14:34 +00:00
GCC Administrator
9239c1b47d
Daily bump.
...
From-SVN: r210092
2014-05-06 00:17:17 +00:00
Chris Manghane
fb930306ba
compiler: Use backend interface for slice construction.
...
* go-gcc.cc (Gcc_backend::implicit_variable): Rename from
gc_root_variable. Add name and is_constant parameters.
From-SVN: r210088
2014-05-06 00:11:29 +00:00
Chris Manghane
3e7b0938f1
compiler: Handle recursive pointer types for unary indirection.
...
* go-gcc.cc (Gcc_backend::indirect_expression): Add btype
parameter.
(Gcc_backend::temporary_variable): Check for erroneous function.
From-SVN: r210087
2014-05-05 23:54:16 +00:00
Jan Hubicka
e400f08159
re PR ipa/60965 (IPA: Devirtualization versus placement new)
...
PR ipa/60965
* ipa-devirt.c (get_class_context): Allow POD to change to non-POD.
* g++.dg/ipa/devirt-32.C: New testcase.
From-SVN: r210086
2014-05-05 23:27:40 +00:00
Radovan Obradovic
aaeaa9a91c
Add call_fusage_contains_non_callee_clobbers hook
...
2014-05-05 Radovan Obradovic <robradovic@mips.com>
Tom de Vries <tom@codesourcery.com>
* target.def (call_fusage_contains_non_callee_clobbers): New DEFHOOKPOD.
* doc/tm.texi.in (@node Stack and Calling): Add Miscellaneous Register
Hooks to @menu.
(@node Miscellaneous Register Hooks): New node.
(@hook TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): New hook.
* doc/tm.texi: Regenerate.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r210085
2014-05-05 22:51:36 +00:00
Ian Lance Taylor
a29aa02e79
compiler: Use backend interface for type info expressions.
...
From-SVN: r210084
2014-05-05 21:48:52 +00:00
Marek Polacek
c2ac23fe23
re PR driver/61065 ([4.9/4.10 Regresion] invalid args to -fsanitize should be an error not a warning)
...
PR driver/61065
* opts.c (common_handle_option): Call error_at instead of warning_at.
From-SVN: r210080
2014-05-05 20:37:47 +00:00
Ian Lance Taylor
535d5152fe
compiler: Use backend interface for sink expressions.
...
From-SVN: r210078
2014-05-05 19:05:59 +00:00
Ian Lance Taylor
36d0631995
compiler: Use backend interface for set and use temporaries.
...
From-SVN: r210077
2014-05-05 18:49:39 +00:00
Ian Lance Taylor
92a87cb7ff
compiler: Use backend interface for struct field offsets.
...
From-SVN: r210074
2014-05-05 17:55:03 +00:00
Richard Biener
0db7457704
passes.c (execute_function_todo): Don't reset TODO_verify_ssa from last_verified if update_ssa ran.
...
2014-05-05 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Don't reset TODO_verify_ssa
from last_verified if update_ssa ran. Move TODO_verify_rtl_sharing
under the TODO_verify_il umbrella.
From-SVN: r210073
2014-05-05 17:40:08 +00:00
Ian Lance Taylor
7d7e4e4174
compiler: Use backend interface for bound method expressions.
...
From-SVN: r210072
2014-05-05 17:22:40 +00:00
Richard Biener
7e7f8713ea
passes.c (execute_function_todo): Move TODO_verify_flow under the TODO_verify_ul umbrella.
...
2014-05-05 Richard Biener <rguenther@suse.de>
* passes.c (execute_function_todo): Move TODO_verify_flow under
the TODO_verify_ul umbrella.
From-SVN: r210068
2014-05-05 09:28:39 +00:00
Richard Biener
7e2c9f1434
re PR middle-end/61010 (Infinite recursion in fold)
...
2014-05-05 Richard Biener <rguenther@suse.de>
PR middle-end/61010
* fold-const.c (fold_binary_loc): Consistently avoid
canonicalizing X & CST away from a CST that is the mask
of a mode.
* gcc.dg/torture/pr61010.c: New testcase.
From-SVN: r210066
2014-05-05 09:23:31 +00:00
Jan-Benedict Glaw
33ecf1086a
picochip-protos.h (picochip_regno_nregs): Change int argument to enum machine_mode.
...
2014-05-05 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/picochip/picochip-protos.h (picochip_regno_nregs): Change
int argument to enum machine_mode.
(picochip_class_max_nregs): Ditto.
* config/picochip/picochip.c (picochip_regno_nregs): Ditto.
(picochip_class_max_nregs): Ditto.
From-SVN: r210065
2014-05-05 08:28:45 +00:00
Andreas Schwab
dd14d42936
Update libstdc++ baseline symbols for ia64
...
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt
(CXXABI_1.3.9): Remove __float128 symbols.
From-SVN: r210063
2014-05-05 08:10:37 +00:00
Andreas Krebbel
d56a43a0e0
target.def: Add new target hook.
...
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* target.def: Add new target hook.
* doc/tm.texi: Regenerate.
* targhooks.h (default_keep_leaf_when_profiled): Add prototype.
* targhooks.c (default_keep_leaf_when_profiled): New function.
* config/s390/s390.c (s390_keep_leaf_when_profiled): New function.
(TARGET_KEEP_LEAF_WHEN_PROFILED): Define.
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.target/s390/leaf-profile.c: New testcase.
From-SVN: r210061
2014-05-05 07:55:26 +00:00
Andreas Krebbel
f668cd6f2b
hoist-register-pressure-1.c: Replace int with long.
...
2014-05-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.dg/hoist-register-pressure-1.c: Replace int with long.
Disable asm scan for s390.
* gcc.dg/hoist-register-pressure-2.c: Likewise.
* gcc.dg/hoist-register-pressure-3.c: Likewise.
From-SVN: r210060
2014-05-05 07:53:35 +00:00
Bin Cheng
cb8f1a5761
re PR tree-optimization/60363 (logical_op_short_circuit, gcc.dg/tree-ssa/ssa-dom-thread-4.c scan-tree-dump-times dom1 "Threaded" 4)
...
PR tree-optimization/60363
* gcc/tree-ssa-threadupdate.c (get_value_locus_in_path): New.
(copy_phi_args): New parameters. Call get_value_locus_in_path.
(update_destination_phis): New parameter.
(create_edge_and_update_destination_phis): Ditto.
(ssa_fix_duplicate_block_edges): Pass new arguments.
(thread_single_edge): Ditto.
PR tree-optimization/60363
* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Revert XFAIL test.
From-SVN: r210059
2014-05-05 07:36:30 +00:00
Peter Bergner
f93bc5b31a
rs6000.h (RS6000_BTM_HARD_FLOAT): New define.
...
gcc/
* config/rs6000/rs6000.h (RS6000_BTM_HARD_FLOAT): New define.
(RS6000_BTM_COMMON): Add RS6000_BTM_HARD_FLOAT.
(TARGET_EXTRA_BUILTINS): Add TARGET_HARD_FLOAT.
* config/rs6000/rs6000-builtin.def (BU_MISC_1):
Use RS6000_BTM_HARD_FLOAT.
(BU_MISC_2): Likewise.
* config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Handle
RS6000_BTM_HARD_FLOAT.
(rs6000_option_override_internal): Enforce -mhard-float if -mhard-dfp
is explicitly used.
(rs6000_invalid_builtin): Add hard floating builtin support.
(rs6000_expand_builtin): Relax the gcc_assert to allow the new
hard float builtins.
(rs6000_builtin_mask_names): Add RS6000_BTM_HARD_FLOAT.
gcc/testsuite/
* gcc.target/powerpc/pack02.c (dg-options): Add -mhard-float.
(dg-require-effective-target): Change target to powerpc_fprs.
* gcc.target/powerpc/pack03.c (dg-options): Add -mhard-dfp.
(dg-require-effective-target): Change target to dfprt.
From-SVN: r210054
2014-05-04 20:52:30 -05:00
GCC Administrator
b89184027e
Daily bump.
...
From-SVN: r210053
2014-05-05 00:16:25 +00:00
GCC Administrator
76374c9079
Daily bump.
...
From-SVN: r210047
2014-05-04 00:16:42 +00:00
Paolo Carlini
32314c3804
re PR c++/58582 ([c++11] ICE defining and instantiating deleted template function)
...
/cp
2014-05-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58582
* decl.c (grokfndecl): Check duplicate_decls return value for
error_mark_node.
* pt.c (instantiate_decl): A deleted function is defined.
/testsuite
2014-05-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58582
* g++.dg/cpp0x/deleted4.C: New.
* g++.dg/cpp0x/deleted5.C: Likewise.
* g++.dg/cpp0x/deleted6.C: Likewise.
From-SVN: r210043
2014-05-03 22:44:22 +00:00
Oleg Endo
579f4e64df
sh_optimize_sett_clrt.cc (sh_optimize_sett_clrt::execute): Add missing function* argument.
...
* config/sh/sh_optimize_sett_clrt.cc (sh_optimize_sett_clrt::execute):
Add missing function* argument.
From-SVN: r210040
2014-05-03 20:22:09 +00:00
Richard Sandiford
0be7287d81
lra-constraints.c (valid_address_p): Move earlier in file.
...
gcc/
* lra-constraints.c (valid_address_p): Move earlier in file.
Add a constraint argument to the address_info version.
(satisfies_memory_constraint_p): New function.
(satisfies_address_constraint_p): Likewise.
(process_alt_operands, curr_insn_transform): Use them.
(process_address): Pass the constraint to valid_address_p when
checking address operands.
From-SVN: r210039
2014-05-03 19:19:56 +00:00
Richard Sandiford
ad782bc910
mips.c (mips_isa_rev): New variable.
...
gcc/
* config/mips/mips.c (mips_isa_rev): New variable.
(mips_set_architecture): Set it.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Set __mips_isa_rev
from mips_isa_rev.
(ISA_HAS_MUL3, ISA_HAS_FP_CONDMOVE, ISA_HAS_8CC, ISA_HAS_FP4)
(ISA_HAS_PAIRED_SINGLE, ISA_HAS_MADD_MSUB, ISA_HAS_FP_RECIP_RSQRT)
(ISA_HAS_CLZ_CLO, ISA_HAS_ROR, ISA_HAS_WSBH, ISA_HAS_PREFETCH)
(ISA_HAS_SEB_SEH, ISA_HAS_EXT_INS, ISA_HAS_MXHC1)
(ISA_HAS_HILO_INTERLOCKS, ISA_HAS_SYNCI, MIN_FPRS_PER_FMT): Reexpress
conditions in terms of mips_isa_rev.
(mips_isa_rev): Declare.
From-SVN: r210038
2014-05-03 19:18:40 +00:00
Oleg Endo
45731f37b3
sh-mem.cc: Use tabs instead of spaces.
...
* config/sh/sh-mem.cc: Use tabs instead of spaces.
(prob_unlikely, prob_likely): Make variables const.
From-SVN: r210037
2014-05-03 17:47:27 +00:00
Denis Chertykov
c61dfa6388
avr.c (avr_adjust_insn_length): Handle JUMP_TABLE_DATA.
...
* config/avr/avr.c (avr_adjust_insn_length): Handle JUMP_TABLE_DATA.
From-SVN: r210035
2014-05-03 18:23:24 +04:00
Dominique d'Humieres
6855e17c36
2014-05-03 Dominique d'Humieres <dominiq@lps.ens.fr>
...
Fix typos in log entries.
From-SVN: r210034
2014-05-03 14:16:53 +02:00
Oleg Endo
1b8da635dc
sh.h (SH_ASM_SPEC): Handle m1, m2*, m3* and m4* cases.
...
* config/sh/sh.h (SH_ASM_SPEC): Handle m1, m2*, m3* and m4* cases.
From-SVN: r210033
2014-05-03 11:50:38 +00:00
Oleg Endo
f6982a08ca
sh.h (ROUND_ADVANCE): Delete macro.
...
* config/sh/sh.h (ROUND_ADVANCE): Delete macro.
(ROUND_REG, PASS_IN_REG_P): Move and rename macros to ...
* config/sh/sh.c (sh_round_reg, sh_pass_in_reg_p): ... these new
functions.
(sh_arg_partial_bytes, sh_function_arg, sh_function_arg_advance,
sh_setup_incoming_varargs): Replace usage of PASS_IN_REG_P with
sh_pass_in_reg_p.
Replace usage of ROUND_REG with sh_round_reg.
Use CEIL instead of ROUND_ADVANCE.
From-SVN: r210032
2014-05-03 09:42:52 +00:00
Dominique d'Humieres
3c922bcd25
re PR testsuite/61025 (FAIL: gfortran.dg/coarray_lib_this_image_1.f90)
...
2014-05-03 Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/61025
* gfortran.dg/coarray_lib_this_image_1.f90: Adjust the dg-final
regexps for -m32.
* gfortran.dg/coarray_lib_this_image_2.f90: Likewise.
* gfortran.dg/coarray_poly_7.f90: Likewise.
* gfortran.dg/coarray_poly_8.f90: Likewise.
* gfortran.dg/coarray_poly_9.f90: Likewise.
From-SVN: r210031
2014-05-03 11:08:15 +02:00
Oleg Endo
0bcf70f851
re PR target/61026 (sh-rtems4.11 build of 4.9.0 fails on FreeBSD 10 c++ (clang).)
...
PR target/61026
* config/sh/sh.c: Include stdlib headers before everything else.
From-SVN: r210028
2014-05-03 07:51:02 +00:00
GCC Administrator
2ec1d0af60
Daily bump.
...
From-SVN: r210026
2014-05-03 00:16:48 +00:00
Jason Merrill
c4fa357222
* decl2.c (vague_linkage_p): Local statics have vague linkage.
...
From-SVN: r210019
2014-05-02 16:56:41 -04:00
Jason Merrill
43b781fac7
re PR c++/60992 (ICE in tsubst_copy, at cp/pt.c:12637)
...
PR c++/60992
* lambda.c (lambda_capture_field_type): Wrap anything dependent
other than 'this'.
(add_capture): Check for VLA before calling it.
* semantics.c (is_this_parameter): Accept any 'this' parameter, not
just the current one. Make non-static.
* cp-tree.h: Declare it.
* pt.c (tsubst_copy) [VAR_DECL]: Also build a new VAR_DECL if
the operand was static or constant.
From-SVN: r210017
2014-05-02 15:47:40 -04:00