1. 13 Aug, 2015 15 commits
    • [MIPS] Enable load/store bonding for I6400 · 2ef38880
      gcc/
      	* config/mips/mips.h (ENABLE_LD_ST_PAIRS): Enable load/store pairs for
      	I6400.
      
      From-SVN: r226860
      Robert Suchanek committed
    • atomic-inst-cas.c: New. · 54a8e4f6
      	* gcc.target/aarch64/atomic-inst-cas.c: New.
      	* gcc.target/aarch64/atomic-inst-ops.inc: New.
      
      From-SVN: r226859
      Matthew Wahab committed
    • * config/aarch64/aarch64-protos.h · b0770c0f
      	(aarch64_gen_atomic_cas): Declare.
      	* config/aarch64/aarch64.c (aarch64_expand_compare_and_swap):
      	Choose appropriate instruction pattern for the target.
      	(aarch64_gen_atomic_cas): New.
      	* config/aarch64/atomics.md (UNSPECV_ATOMIC_CAS): New.
      	(atomic_compare_and_swap<mode>_1): Rename to
      	aarch64_compare_and_swap<mode>.  Fix some indentation.
      	(aarch64_compare_and_swap<mode>_lse): New.
      	(aarch64_atomic_cas<mode>): New.
      
      From-SVN: r226858
      Matthew Wahab committed
    • aarch64.h (AARCH64_ISA_LSE): New. · 045c2d32
      	* config/aarch64/aarch64.h (AARCH64_ISA_LSE): New.
      	(TARGET_LSE): New.
      
      From-SVN: r226857
      Matthew Wahab committed
    • * gcc.dg/tree-ssa/vrp33.c: Add -fno-tree-fre. · adacb5b1
      From-SVN: r226856
      Andreas Schwab committed
    • re PR c++/62164 (5.0: ICE: error: Both section and comdat group is set) · 1841dfbf
      2015-08-13  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/62164
      	* g++.dg/torture/pr62164.C: New.
      
      From-SVN: r226855
      Paolo Carlini committed
    • re PR tree-optimization/67191 (ICE: in before_dom_children, at tree-ssa-sccvn.c:4372) · 310d5e7d
      2015-08-13  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/67191
      	* tree-ssa-sccvn.c (sccvn_dom_walker::before_dom_children): Remove
      	assert we value-numbered last stmts operand because it can validly
      	trigger for unreachable code.
      
      	* gcc.dg/torture/pr67191.c: New testcase.
      	* g++.dg/torture/pr67191.C: Likewise.
      
      From-SVN: r226854
      Richard Biener committed
    • [RTL-ifcvt] Improve conditional select ops on immediates (fix failing x86_64 cmov tests) · d27555bf
      	PR rtl-optimization/67103
      	* ifcvt.c (noce_try_store_flag_constants): Move
      	x = (-(test != 0) & (b - a)) + a transformation to...
      	(noce_try_cmove): ... Here.  Try it if normal conditional
      	move fails.
      
      From-SVN: r226853
      Kyrylo Tkachov committed
    • tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize comparison operand… · 89711ff6
      tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize comparison operand order and commutative ternary op operand order.
      
      2015-08-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize
      	comparison operand order and commutative ternary op operand order.
      	(sccvn_dom_walker::cond_stack): New state to track temporary
      	expressions.
      	(sccvn_dom_walker::after_dom_children): Remove tempoary expressions
      	no longer valid.
      	(sccvn_dom_walker::record_cond): Add a single temporary conditional
      	expression.
      	(sccvn_dom_walker::record_conds): Add a temporary conditional
      	expressions and all related expressions also true/false.
      	(sccvn_dom_walker::before_dom_children): Record temporary
      	expressions based on the controlling condition of a single
      	predecessor.  When trying to simplify a conditional statement
      	lookup expressions we might have inserted earlier.
      
      	* testsuite/gcc.dg/tree-ssa/ssa-fre-47.c: New testcase.
      	* testsuite/gcc.dg/tree-ssa/ssa-fre-48.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/ssa-fre-49.c: Likewise.
      	* testsuite/g++.dg/tree-ssa/pr61034.C: Adjust.
      	* testsuite/gcc.dg/fold-compare-2.c: Likewise.
      	* testsuite/gcc.dg/pr50763.c: Likewise.
      	* testsuite/gcc.dg/predict-3.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/20030709-2.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/pr19831-3.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/pr20657.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/pr21001.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/pr37508.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp04.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp07.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp09.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp16.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp20.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp25.c: Likewise.
      	* testsuite/gcc.dg/tree-ssa/vrp87.c: Likewise.
      
      From-SVN: r226852
      Richard Biener committed
    • [MIPS] Remove W32 and W64 pseudo-processors. · 43eb7f8a
      gcc/
      	* config/mips/mips.c (mips_rtx_cost_data): Remove costs for W32 and W64
      	pseudo-processors.
      	* config/mips/mips.md (processor): Remove w32 and w64.
      
      From-SVN: r226851
      Robert Suchanek committed
    • re PR tree-optimization/66502 (SCCVN can't handle PHIs optimistically optimally) · 9fe4f60a
      2015-08-13  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/66502
      	PR tree-optimization/67167
      	* tree-ssa-sccvn.c (vn_phi_compute_hash): Do not include
      	backedge arguments.
      	(vn_phi_lookup): Adjust.
      	(vn_phi_insert): Likewise.
      	(visit_phi): Prefer to value-number to another PHI node
      	over value-numbering to a PHI argument.
      	(init_scc_vn): Mark DFS back edges.
      
      	* gcc.dg/tree-ssa/ssa-fre-46.c: New testcase.
      
      From-SVN: r226850
      Richard Biener committed
    • gimple.h (gcall::code_): New constant static member. · 003b40ae
      2015-08-13  Richard Biener  <rguenther@suse.de>
      
      	* gimple.h (gcall::code_): New constant static member.
      	(gcond::code_): Likewise.
      	* gimple.c (gcall::code_): Define.
      	(gcond::code_): Likewise.
      	(is_a_helper <const gcond *>): Add.
      	(gimple_call_lhs): Use GIMPLE_CHECK2 in the gimple overload
      	and forward to a new gcall overload with less checking and a
      	cheaper way to access the operand.
      	(gimple_call_lhs_ptr): Likewise.
      	(gimple_call_set_lhs): Likewise.
      	(gimple_call_internal_p): Likewise.
      	(gimple_call_with_bounds_p): Likewise.
      	(gimple_call_set_with_bounds): Likewise.
      	(gimple_call_internal_fn): Likewise.
      	(gimple_call_set_ctrl_altering): Likewise.
      	(gimple_call_ctrl_altering_p): Likewise.
      	(gimple_call_fntype): Likewise.
      	(gimple_call_fn): Likewise.
      	(gimple_call_fn_ptr): Likewise.
      	(gimple_call_set_fndecl): Likewise.
      	(gimple_call_fndecl): Likewise.
      	(gimple_call_chain): Likewise.
      	(gimple_call_num_args): Likewise.
      	(gimple_call_arg): Likewise.
      	(gimple_call_arg_ptr): Likewise.
      	(gimple_call_set_arg): Likewise.
      	(gimple_call_noreturn_p): Likewise.
      	(gimple_cond_code): Likewise.
      	(gimple_cond_lhs): Likewise.
      	(gimple_cond_rhs): Likewise.
      	(gimple_has_lhs): Reduce checking.
      
      From-SVN: r226849
      Richard Biener committed
    • re PR middle-end/25529 ((unsigned * 2)/2 is not changed into unsigned &0x7FFFFFFF) · 95765f36
      2015-08-13  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>
      
      	PR middle-end/25529
      	* match.pd (div (mult @0 @1) @1) : New simplifier.
      
      From-SVN: r226847
      Naveen H.S committed
    • compiler: Flatten erroneous subtrees into errors. · b02520e9
          
          Between the lowering and flattening passes of the compiler, there are
          several passes that modify the lowered Go parse tree and as errors are
          discovered, several nodes transform into error nodes.  However, for a
          higher level node such as a construction expression, the erroneous
          nodes in the subtrees might not propagate their error.  The flatten
          phase for a node now looks for errors in the subtree and flattens the
          node into an error node if any are found.
          
          Fixes golang/go#11559, golang/go#11536, golang/go#11558.
          
          Reviewed-on: https://go-review.googlesource.com/13097
      
      From-SVN: r226845
      Ian Lance Taylor committed
    • Daily bump. · 2f4fdc09
      From-SVN: r226844
      GCC Administrator committed
  2. 12 Aug, 2015 25 commits
    • re PR c++/53330 (new() operator can return NULL on a zero-length allocation) · a8109f4c
      2015-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53330
      	* g++.dg/init/new42.C: New.
      
      From-SVN: r226840
      Paolo Carlini committed
    • re PR target/67071 (GCC misses an optimization to load vector constants) · 683be46f
      [gcc]
      2015-08-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/67071
      	* config/rs6000/predicates.md (easy_vector_constant_vsldoi): New
      	predicate to allow construction of vector constants using the
      	VSLDOI vector shift instruction.
      
      	* config/rs6000/rs6000-protos.h (vspltis_shifted): Add
      	declaration.
      
      	* config/rs6000/rs6000.c (vspltis_shifted): New function to return
      	the number of bytes to be shifted left and filled in with either
      	all zero or all one bits.
      	(gen_easy_altivec_constant): Call vsplitis_shifted if no other
      	methods exist.
      	(output_vec_const_move): On power8, generate XXLORC to generate
      	a vector constant with all 1's. Do a split if we need to use a
      	VSLDOI instruction.
      
      	* config/rs6000/rs6000.h (EASY_VECTOR_MSB): Use mode mask to
      	properly test for the MSB.
      
      	* config/rs6000/altivec.md (VSLDOI splitter): Add splitter for
      	vector constants that can be created with VSLDOI.
      
      [gcc/testsuite]
      2015-08-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/67071
      	* gcc.target/powerpc/pr67071-1.c: New file to test PR 67071 new
      	vector constants.
      	* gcc.target/powerpc/pr67071-2.c: Likewise.
      	* gcc.target/powerpc/pr67071-3.c: Likewise.
      
      From-SVN: r226836
      Michael Meissner committed
    • Revert "replace several uses of the anon namespace with GCC_FINAL" · 17795822
      This reverts commit daa5a8a3cf9b04cd9af5544c61e12e6dca14f870.
      
      From-SVN: r226834
      Trevor Saunders committed
    • re PR c++/67104 (Constant expression factory function initializes std::array… · bd07e167
      re PR c++/67104 (Constant expression factory function initializes std::array with static storage duration strangely)
      
      	PR c++/67104
      	* constexpr.c (cxx_eval_array_reference): Fix typo.
      
      From-SVN: r226833
      Jason Merrill committed
    • re PR c++/67104 (Constant expression factory function initializes std::array… · 3b9997bb
      re PR c++/67104 (Constant expression factory function initializes std::array with static storage duration strangely)
      
      	PR c++/67104
      	* constexpr.c (cxx_eval_array_reference): Handle sparse
      	CONSTRUCTORs.
      
      From-SVN: r226830
      Jason Merrill committed
    • re PR c++/67108 (ICE: in cxx_eval_call_expression, at cp/constexpr.c:1345 when dumping) · e5e58dbe
      	PR c++/67108
      	* decl2.c (c_parse_final_cleanups): Set at_eof to 2 at end.
      	* error.c (dump_template_bindings): Don't tsubst in that case.
      
      From-SVN: r226829
      Jason Merrill committed
    • xtensa: add -mauto-litpools option · a024f514
      With support from assembler this option allows compiling huge functions,
      where single literal pool at the beginning of a function may not be
      reachable by L32R instructions at its end.
      
      Currently assembler --auto-litpools option cannot deal with literals
      used from multiple locations separated by more than 256 KBytes of code.
      Don't turn constants into literals, instead use MOVI instruction to load
      them into registers and let the assembler turn them into literals as
      necessary.
      
      2015-08-12  Max Filippov  <jcmvbkbc@gmail.com>
      gcc/
      	* config/xtensa/constraints.md (define_constraint "Y"): New
      	constraint.
      	* config/xtensa/elf.h (ASM_SPEC): Add m(no-)auto-litpools.
      	* config/xtensa/linux.h (ASM_SPEC): Likewise.
      	* config/xtensa/predicates.md (move_operand): Match constants
      	and symbols in the presence of TARGET_AUTO_LITPOOLS.
      	* config/xtensa/xtensa.c (xtensa_valid_move): Don't allow
      	immediate references to TLS data.
      	(xtensa_emit_move_sequence): Don't force constants to memory in
      	the presence of TARGET_AUTO_LITPOOLS.
      	(print_operand): Add 'y' format, same as default, but capable of
      	printing SF mode constants as well.
      	* config/xtensa/xtensa.md (movsi_internal, movhi_internal)
      	(movsf_internal): Add movi pattern that loads literal.
      	(movsf, movdf): Don't force constants to memory in the presence
      	of TARGET_AUTO_LITPOOLS.
      	(movdf_internal): Add 'Y' constraint.
      	* config/xtensa/xtensa.opt (mauto-litpools): New option.
      	* doc/invoke.text (Xtensa options): Document -mauto-litpools.
      
      From-SVN: r226828
      Max Filippov committed
    • re PR c++/67161 (ICE with a static_assert using our internal __not/__or/__and traits) · 4757fa7f
      	PR c++/67161
      	* error.c (dump_decl) [TEMPLATE_ID_EXPR]: Pass
      	TFF_NO_OMIT_DEFAULT_TEMPLATE_ARGUMENTS.
      
      From-SVN: r226827
      Jason Merrill committed
    • re PR c++/55095 (Wshift-overflow) · b893e375
      	PR c++/55095
      	* c-common.c (maybe_warn_shift_overflow): Properly handle
      	left-shifting 1 into the sign bit.
      
      	* c-c++-common/Wshift-overflow-6.c: New test.
      	* c-c++-common/Wshift-overflow-7.c: New test.
      	* g++.dg/cpp1y/left-shift-2.C: New test.
      
      From-SVN: r226826
      Marek Polacek committed
    • compiler: Don't make gc symbol for bad array type. · bb2978b8
          
          When parsing a malformed array type, i.e. invalid length, gccgo
          would loop indefinitely based off of a uninitialized length variable.
          
          Fixes golang/go#11539.
          
          Reviewed-on: https://go-review.googlesource.com/13066
      
      From-SVN: r226825
      Ian Lance Taylor committed
    • re PR c++/52742 (Initializing an array using brace initializer and template parameters) · c3d3b30a
      2015-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/52742
      	* g++.dg/cpp0x/pr52742.C: New.
      
      From-SVN: r226824
      Paolo Carlini committed
    • arm-fpus.def: Replace booleans with feature flags. · cafd2e45
      	* config/arm/arm-fpus.def: Replace booleans with feature flags.
      	Update comment.
      	* config/arm/arm.c (ARM_FPU): Update macro.
      	* config/arm/arm.h (TARGET_NEON_FP16): Update feature test.
      	(TARGET_FP16): Likewise.
      	(TARGET_CRYPTO): Likewise.
      	(TARGET_NEON): Likewise.
      	(struct arm_fpu_desc): Remove fields neon, fp16 and crypto.  Add
      	field features.
      
      From-SVN: r226821
      Matthew Wahab committed
    • Fix warnings when bootstrapping on darwin with vtable verification enabled. · 441fb2cd
      libstdc++-v3/ChangeLog:
      
      2015-08-11  Caroline Tice <cmtice@google.com>
      
              PR 66521, Contributed by Eric Gallager
              * acinclude.m4 (VTV_CXXLINKFLAGS): Make this variable OS-specific, and
              fix the rpath flag to work properly for darwin.
              * configure: Regenerated.
      
      From-SVN: r226820
      Caroline Tice committed
    • Remove --with-host-libstdcxx · 5dc85f7e
      2015-08-12  Tom de Vries  <tom@codesourcery.com>
      
      	PR other/67092
      	PR other/67098
      	* configure.ac: Remove --with_host_libstdcxx support.
      	* configure: Regenerate.
      
      	* doc/install.texi: Remove --with_host_libstdcxx item.  Update
      	--with-stage1-libs, --with-boot-ldflags and --with-boot-libs items
      	accordingly.  Mention default for --with-stage1-ldflags.
      
      From-SVN: r226819
      Tom de Vries committed
    • arm.h (arm_fpu_feature_set): New. · b813c040
      	* config/arm/arm.h (arm_fpu_feature_set): New.
      	(ARM_FPU_FSET_HAS): New.
      	(FPU_FL_NONE): New.
      	(FPU_FL_NEON): New.
      	(FPU_FL_FP16): New.
      	(FPU_FL_CRYPTO): New.
      
      From-SVN: r226818
      Matthew Wahab committed
    • Add Knights Landing support to __builtin_cpu_is · 51c728b1
      This patch adds Knights Landing support to __builtin_cpu_is.
      
      gcc/testsuite/
      
      	* gcc.target/i386/builtin_target.c (check_intel_cpu_model):
      	Check Knights Landing support.
      
      libgcc/
      
      	* config/i386/cpuinfo.c (processor_types): Add INTEL_KNL.
      	(get_intel_cpu): Add Knights Landing support.
      
      From-SVN: r226817
      H.J. Lu committed
    • re PR c++/47461 (warn_unused_result attribute ignored for templates) · 026af560
      2015-08-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/47461
      	* g++.dg/warn/Wunused-result-1.C: New.
      
      From-SVN: r226816
      Paolo Carlini committed
    • [AArch64] Do not ICE after apologising for -mcmodel=large -fPIC · 1c652781
      	* config/aarch64/aarch64.c (initialize_aarch64_code_model): Break
      	after -mcmodel=large -fPIC sorry.
      
      From-SVN: r226815
      Kyrylo Tkachov committed
    • tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize comparison operand… · 7fd9012e
      tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize comparison operand order and commutative ternary op operand order.
      
      2015-08-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Also canonicalize
      	comparison operand order and commutative ternary op operand order.
      	(sccvn_dom_walker::cond_stack): New state to track temporary
      	expressions.
      	(sccvn_dom_walker::after_dom_children): Remove tempoary expressions
      	no longer valid.
      	(sccvn_dom_walker::record_cond): Add a single temporary conditional
      	expression.
      	(sccvn_dom_walker::record_conds): Add a temporary conditional
      	expressions and all related expressions also true/false.
      	(sccvn_dom_walker::before_dom_children): Record temporary
      	expressions based on the controlling condition of a single
      	predecessor.  When trying to simplify a conditional statement
      	lookup expressions we might have inserted earlier.
      
      	* gcc.dg/tree-ssa/ssa-fre-47.c: New testcase.
      	* gcc.dg/tree-ssa/ssa-fre-48.c: Likewise.
      	* gcc.dg/tree-ssa/ssa-fre-49.c: Likewise.
      	* g++.dg/tree-ssa/pr61034.C: Adjust.
      	* gcc.dg/fold-compare-2.c: Likewise.
      	* gcc.dg/pr50763.c: Likewise.
      	* gcc.dg/predict-3.c: Likewise.
      	* gcc.dg/tree-ssa/20030709-2.c: Likewise.
      	* gcc.dg/tree-ssa/pr19831-3.c: Likewise.
      	* gcc.dg/tree-ssa/pr20657.c: Likewise.
      	* gcc.dg/tree-ssa/pr21001.c: Likewise.
      	* gcc.dg/tree-ssa/pr37508.c: Likewise.
      	* gcc.dg/tree-ssa/vrp04.c: Likewise.
      	* gcc.dg/tree-ssa/vrp07.c: Likewise.
      	* gcc.dg/tree-ssa/vrp09.c: Likewise.
      	* gcc.dg/tree-ssa/vrp16.c: Likewise.
      	* gcc.dg/tree-ssa/vrp20.c: Likewise.
      	* gcc.dg/tree-ssa/vrp25.c: Likewise.
      	* gcc.dg/tree-ssa/vrp87.c: Likewise.
      
      From-SVN: r226814
      Richard Biener committed
    • re PR target/67127 ([ARM] Avoiding odd-number ldrd/strd in movdi introduced a… · c0ba5a8b
      re PR target/67127 ([ARM] Avoiding odd-number ldrd/strd in movdi introduced a regression on armeb-linux-gnueabihf)
      
      2015-08-12  Yvan Roux  <yvan.roux@linaro.org>
      
      	PR target/67127
      	* config/arm/arm.md (movdi): Restrict illegitimate ldrd/strd checking
      	to ARM core registers.
      
      From-SVN: r226811
      Yvan Roux committed
    • tree-vrp.c (simplify_min_or_max_using_ranges): New. · da7db2ce
      	* tree-vrp.c (simplify_min_or_max_using_ranges): New.
      	(simplify_stmt_using_ranges): Simplify MIN and MAX exprs.
      
      	testsuite/
      	* gcc.dg/vrp-min-max-1.c: New.
      	* gcc.dg/vrp-min-max-2.c: New.
      
      From-SVN: r226809
      Nathan Sidwell committed
    • c-decl.c (grokdeclarator): Call error_at instead of error and pass LOC to it. · 191a6b94
      	* c-decl.c (grokdeclarator): Call error_at instead of error and pass
      	LOC to it.
      
      From-SVN: r226807
      Marek Polacek committed
    • appendix_contributing.xml: Update patch email policy. · 93666a7b
      	* doc/xml/manual/appendix_contributing.xml: Update patch email policy.
      	* doc/xml/manual/status_cxx2017.xml: Update status table.
      	* doc/html/manual/*: Regenerate.
      
      From-SVN: r226806
      Jonathan Wakely committed
    • [MIPS] Scheduler fix for the 74k & 24k. · 585d372b
      2015-08-12  Simon Dardis  <simon.dardis@imgtec.com>
      
      gcc/
      	* config/mips/mips.c (mips_store_data_bypass_p): Bring code into
      	line with comments.
      	* config/mips/sb1.md: Update usage of mips_store_data_bypass_p.
      
      From-SVN: r226805
      Simon Dardis committed
    • gimple.h (remove_pointer): New trait. · bde351d5
      2015-08-12  Richard Biener  <rguenther@suse.de>
      
      	* gimple.h (remove_pointer): New trait.
      	(GIMPLE_CHECK2): New inline template function.
      	(gassign::code_): New constant static member.
      	(is_a_helper<const gassign *>): Add.
      	(gimple_assign_lhs): Use GIMPLE_CHECK2 in the gimple overload
      	and forward to a new gassign overload with less checking and a
      	cheaper way to access the operand.
      	(gimple_assign_lhs_ptr): Likewise.
      	(gimple_assign_set_lhs): Likewise.
      	(gimple_assign_rhs1, gimple_assign_rhs1_ptr, gimple_assign_set_rhs1):
      	Likewise.
      	(gimple_assign_rhs2, gimple_assign_rhs2_ptr, gimple_assign_set_rhs2):
      	Likewise.
      	(gimple_assign_rhs3, gimple_assign_rhs3_ptr, gimple_assign_set_rhs3):
      	Likewise.
      	(gimple_assign_rhs_code): Likewise.
      	* gimple.c (gassign::code_): Define.
      
      From-SVN: r226802
      Richard Biener committed