Manuel López-Ibáñez [Sat, 7 Apr 2012 22:09:42 +0000 (22:09 +0000)]
Wstrict-aliasing-float-ref-int-obj.C: Add labels to directives.
2012-04-08 Manuel López-Ibáñez <manu@gcc.gnu.org>
* g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: Add labels to
directives.
From-SVN: r186216
Thomas Koenig [Sat, 7 Apr 2012 16:38:11 +0000 (16:38 +0000)]
re PR fortran/52893 (Moving functions out of implied DO loops)
2012-04-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52893
* frontend-passes.c: Keep track of wether we are in an implicit
DO loop; do not do function elimination if we are.
2012-04-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52893
* gfortran.dg/function_optimize_11.f90: New test.
From-SVN: r186213
Oleg Endo [Sat, 7 Apr 2012 12:03:13 +0000 (12:03 +0000)]
sh.h (high_life_started): Remove
* config/sh/sh.h (high_life_started): Remove
* config/sh/predicates.md (general_movdst_operand): Use
'reload_in_progress' instead of 'high_life_started'.
* config/sh/sh.md (divsi_inv_call, *divsi_inv_call_combine,
divsi_inv_fp): Likewise.
From-SVN: r186212
Oleg Endo [Sat, 7 Apr 2012 12:01:01 +0000 (12:01 +0000)]
sh-protos.h (prepare_move_operands): Return void instead of int.
* config/sh/sh-protos.h (prepare_move_operands): Return void
instead of int.
* config/sh/sh.c (prepare_move_operands): Likewise.
* config/sh/sh.md: Remove return value checks of prepare_move_operands.
From-SVN: r186211
Oleg Endo [Sat, 7 Apr 2012 11:58:42 +0000 (11:58 +0000)]
sh-protos.h (fp_int_operand, [...]): Remove.
* config/sh/sh-protos.h (fp_int_operand, symbol_ref_operand,
general_movsrc_operand, general_movdst_operand, arith_reg_operand,
fp_arith_reg_operand, arith_operand, arith_reg_or_0_operand,
logical_operand, fpscr_operand, fpul_operand, expand_fp_branch,
commutative_float_operator, noncommutative_float_operator,
sh_handle_pragma): Remove.
From-SVN: r186210
Sandra Loosemore [Sat, 7 Apr 2012 03:47:05 +0000 (23:47 -0400)]
invoke.texi: Clean up Texinfo markup throughout the file.
2012-04-06 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi: Clean up Texinfo markup throughout the file.
Use @option markup on command-line options. Use @samp markup on
literal keywords to options. Use @code markup on code fragments.
Use other markup in preference to quotation marks in the text.
Add markup to some passages without any.
From-SVN: r186209
GCC Administrator [Sat, 7 Apr 2012 00:18:42 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186208
Mike Stump [Fri, 6 Apr 2012 23:00:11 +0000 (23:00 +0000)]
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Avoid warning.
From-SVN: r186202
Doug Evans [Fri, 6 Apr 2012 19:39:52 +0000 (19:39 +0000)]
* dg-extract-results.sh: Handle KFAILs.
From-SVN: r186200
Thomas Koenig [Fri, 6 Apr 2012 18:31:11 +0000 (18:31 +0000)]
re PR fortran/52668 (Incorrect unused warning for USE associating variable in common block)
2012-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52668
* module.c: Only mark symbols as use_only if they have been
imported via an only list.
2012-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52668
* gfortran.dg/use_only_6.f90: New test.
From-SVN: r186199
Mike Stump [Fri, 6 Apr 2012 15:02:21 +0000 (15:02 +0000)]
re PR testsuite/50722 (FAIL: gcc.dg/pr49994-3.c (test for excess errors))
PR testsuite/50722
* gcc.dg/pr49994-3.c: Use -w to squelch non-portable warnings.
From-SVN: r186194
Jason Merrill [Fri, 6 Apr 2012 13:25:45 +0000 (09:25 -0400)]
re PR c++/52596 ([C++11] internal compiler error: in lvalue_kind, at cp/tree.c:153)
PR c++/52596
* semantics.c (finish_non_static_data_member): In templates, pass
the decl to build_qualified_name.
* tree.c (lvalue_kind) [SCOPE_REF]: Handle FIELD_DECL.
From-SVN: r186187
Jason Merrill [Fri, 6 Apr 2012 13:25:37 +0000 (09:25 -0400)]
xvalue comment
From-SVN: r186186
Oleg Endo [Fri, 6 Apr 2012 12:33:24 +0000 (12:33 +0000)]
sh.c (hi_const): Remove.
* config/sh/sh.c (hi_const): Remove.
(find_barrier, sh_reorg): Use satisfies_constraint_I16 instead
of hi_const.
From-SVN: r186185
Oleg Endo [Fri, 6 Apr 2012 12:29:30 +0000 (12:29 +0000)]
sh-protos.h (sh_expand_t_scc): Change return type from int to bool.
* config/sh/sh-protos.h (sh_expand_t_scc): Change return type from int
to bool.
* config/sh/sh.c (sh_expand_t_scc): Likewise.
* config/sh/sh.md (cstoresi4, cstoredi4): Remove GET_CODE checks before
calling sh_expand_t_scc.
From-SVN: r186184
Oleg Endo [Fri, 6 Apr 2012 12:25:03 +0000 (12:25 +0000)]
sh-protos.h (fp_zero_operand, [...]): Use bool as return type.
* config/sh/sh-protos.h (fp_zero_operand, fp_one_operand,
nonpic_symbol_mentioned_p, expand_block_move, expand_ashiftrt,
sh_dynamicalize_shift_p, gen_shl_and, gen_shl_sext, system_reg_operand,
reg_unused_after, sh_can_redirect_branch, sh_need_epilogue, fldi_ok,
sh_hard_regno_rename_ok, sh_cfun_interrupt_handler_p,
sh_cfun_resbank_handler_p, sh_attr_renesas_p, sh_cfun_attr_renesas_p,
check_use_sfunc_addr, sh_contains_memref_p, sh_loads_bankedreg_p,
sh2a_is_function_vector_call): Use bool as return type.
(sh_pass_in_reg_p): Remove.
* config/sh/sh.c (broken_move, mova_p, noncall_uses_reg, high_pressure,
flow_dependent_p, sh2a_function_vector_p, expand_block_move,
expand_ashiftrt, sh_dynamicalize_shift_p, gen_shl_and, gen_shl_sext,
sh_need_epilogue, sh2a_is_function_vector_call, sh_attr_renesas_p,
sh_cfun_attr_renesas_p, sh_cfun_interrupt_handler_p,
sh_cfun_resbank_handler_p, system_reg_operand, fp_zero_operand,
fp_one_operand, fldi_ok, reg_unused_after, sh_can_redirect_branch,
sh_hard_regno_rename_ok, check_use_sfunc_addr, sh_contains_memref_p,
sh_loads_bankedreg_p): Use bool as return type.
(nonpic_symbol_mentioned_p): Use bool as return type. Remove
'register' modifier.
From-SVN: r186183
Matt Turner [Fri, 6 Apr 2012 08:22:54 +0000 (08:22 +0000)]
install.texi: Correct typo "-mno-lsc" -> "-mno-llsc".
gcc/
2012-04-04 Matt Turner <mattst88@gmail.com>
* doc/install.texi: Correct typo "-mno-lsc" -> "-mno-llsc".
From-SVN: r186179
Eric Botcazou [Fri, 6 Apr 2012 06:44:18 +0000 (06:44 +0000)]
ia64.c (ia64_load_pair_ok): Return 0 if the second member of the destination isn't also a FP_REGS register.
* config/ia64/ia64.c (ia64_load_pair_ok): Return 0 if the second member
of the destination isn't also a FP_REGS register.
From-SVN: r186177
Teresa Johnson [Fri, 6 Apr 2012 05:03:49 +0000 (05:03 +0000)]
Avoid instructions that incur expensive length-changing prefix (LCP) stalls on some x86-64 implementations...
Avoid instructions that incur expensive length-changing prefix (LCP) stalls
on some x86-64 implementations, notably Core2 and Corei7. Specifically, a move of
a 16-bit constant into memory requires a length-changing prefix and can incur significant
penalties. Modified an old patch written by H.J to split such instructions
during peephole2.
2012-04-05 Teresa Johnson <tejohnson@google.com>
H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.h (ix86_tune_indices): Add
X86_TUNE_LCP_STALL.
* config/i386/i386.md (move immediate to memory peephole2):
Add cases for HImode move when LCP stall avoidance is needed.
* config/i386/i386.c (initial_ix86_tune_features): Initialize
X86_TUNE_LCP_STALL entry.
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
From-SVN: r186176
GCC Administrator [Fri, 6 Apr 2012 00:17:42 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r186174
Uros Bizjak [Thu, 5 Apr 2012 21:47:16 +0000 (23:47 +0200)]
re PR target/52882 (ICE in memory_address_length, at config/i386/i386.c:23373)
PR target/52882
* config/i386/i386.c (ix86_decompose_address): Allow VOIDmode
CONST_INT operands, zero-extended with AND.
testsuite/ChangeLog:
PR target/52882
* gcc.target/i386/pr52882.c: New test.
From-SVN: r186170
Oleg Endo [Thu, 5 Apr 2012 18:43:45 +0000 (18:43 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)
PR target/50751
* config/sh/sh.c (sh_find_mov_disp_adjust): Take machine_mode as the
first argument instead of mode size. Move displacement calculations
to ...
(mov_insn_size, max_mov_insn_displacement, mov_insn_alignment_mask):
... these new functions.
(disp_adjust): Remove max_mov_disp field.
(sh_legitimate_index_p): Use max_mov_insn_displacement and
mov_insn_alignment_mask.
(sh_address_cost): Use max_mov_insn_displacement.
From-SVN: r186169
Andrew Stubbs [Thu, 5 Apr 2012 14:37:45 +0000 (14:37 +0000)]
arm.md (arch): Add neon_onlya8 and neon_nota8.
2012-04-05 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.md (arch): Add neon_onlya8 and neon_nota8.
(arch_enabled): Handle new arch types.
(one_cmpldi2): Add NEON support.
From-SVN: r186167
Richard Guenther [Thu, 5 Apr 2012 14:22:26 +0000 (14:22 +0000)]
lto-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Remove definition.
2012-04-05 Richard Guenther <rguenther@suse.de>
* lto-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Remove
definition.
From-SVN: r186166
Richard Guenther [Thu, 5 Apr 2012 13:38:47 +0000 (13:38 +0000)]
gimple.c (walk_gimple_op): Compute val_only for the LHS of an assigment in the canonical way...
2012-04-05 Richard Guenther <rguenther@suse.de>
* gimple.c (walk_gimple_op): Compute val_only for the LHS
of an assigment in the canonical way, avoiding is_gimple_mem_rhs.
(is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt): Move ...
* gimplify.c (is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt):
... here and make static.
* gimple.h (is_gimple_mem_rhs, is_gimple_reg_rhs, is_gimple_stmt):
Remove.
From-SVN: r186165
Richard Guenther [Thu, 5 Apr 2012 12:43:25 +0000 (12:43 +0000)]
tree-ssa-dse.c (dse_optimize_stmt): Remember the stmt basic-block before removing it.
2012-04-05 Richard Guenther <rguenther@suse.de>
* tree-ssa-dse.c (dse_optimize_stmt): Remember the stmt
basic-block before removing it.
From-SVN: r186164
Bill Schmidt [Thu, 5 Apr 2012 12:11:50 +0000 (12:11 +0000)]
re PR testsuite/52614 (Test failures in gcc.dg/vect: vectorizing unaligned access)
gcc/testsuite:
2012-04-05 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Dominique D'Humieures <dominiq@lps.ens.fr>
PR testsuite/52614
* gcc.dg/vect/vect.exp: Use -fno-common on all targets.
* gcc.dg/vect/costmodel/ppc/ppc-costmodel-vect.exp: Likewise.
Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r186163
Richard Guenther [Thu, 5 Apr 2012 11:30:52 +0000 (11:30 +0000)]
tree-ssanames.c (release_dead_ssa_names): Compact the SSA version namespace as we release the freelist.
2012-04-05 Richard Guenther <rguenther@suse.de>
* tree-ssanames.c (release_dead_ssa_names): Compact the SSA
version namespace as we release the freelist.
From-SVN: r186162
Rainer Orth [Thu, 5 Apr 2012 10:04:40 +0000 (10:04 +0000)]
Restore HAVE_INET6 tests (PR libgcj/52645)
PR libgcj/52645
* gnu/java/net/natPlainDatagramSocketImplPosix.cc (setOption):
Restore HAVE_INET6 check.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc (setOption):
Likewise.
From-SVN: r186161
Richard Guenther [Thu, 5 Apr 2012 09:45:18 +0000 (09:45 +0000)]
tree-nrv.c (tree_nrv): Release VDEFs.
2012-04-05 Richard Guenther <rguenther@suse.de>
* tree-nrv.c (tree_nrv): Release VDEFs.
* tree-sra.c (sra_modify_constructor_assign): Likewise.
(sra_modify_assign): Likewise.
* tree-vect-stmts.c (vect_remove_stores): Likewise.
* tree-vect-loop.c (vect_transform_loop): Likewise.
* tree-ssa-dom.c (optimize_stmt): Likewise.
* tree-vect-slp.c (vect_schedule_slp): Likewise.
* tree-ssa-math-opts.c (execute_cse_sincos): Likewise.
From-SVN: r186160
Richard Guenther [Thu, 5 Apr 2012 09:43:48 +0000 (09:43 +0000)]
gimple-iterator.c (gsi_remove): Return whether EH edges need to be cleanup.
2012-04-05 Richard Guenther <rguenther@suse.de>
* gimple-iterator.c (gsi_remove): Return whether EH edges need to be
cleanup.
* gimple.h (gsi_remove): Adjust.
* tree-ssa-operands.c (unlink_stmt_vdef): Optimize.
* tree-ssa-dom.c (optimize_stmt): Use gsi_remove result.
* tree-ssa-dse.c (dse_optimize_stmt): Likewise.
* tree-ssa-forwprop.c (remove_prop_source_from_use): Likewise.
* tree-ssa-math-opts.c (execute_optimize_widening_mul): Likewise.
* tree-ssa-pre.c (eliminate): Likewise.
From-SVN: r186159
Rainer Orth [Thu, 5 Apr 2012 09:10:38 +0000 (09:10 +0000)]
Export std::_List_node_base for non-PIC code
From-SVN: r186158
Bernhard Reutner-Fischer [Thu, 5 Apr 2012 07:00:30 +0000 (09:00 +0200)]
PR bootstrap/52840: libstdc++: let debug find sources for compatibility.lo
2012-04-05 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
PR bootstrap/52840
* src/Makefile.am (build-debug): Do not adjust vpath dir, remove
Makefile.tmp
* src/Makefile.in: Adjust as per above.
From-SVN: r186156
GCC Administrator [Thu, 5 Apr 2012 00:18:25 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186153
Mike Stump [Wed, 4 Apr 2012 20:27:17 +0000 (20:27 +0000)]
rtl.texi (const_double): Document as sign-extending.
* doc/rtl.texi (const_double): Document as sign-extending.
* expmed.c (expand_mult): Ensure we don't use shift
incorrectly.
* emit-rtl.c (immed_double_int_const): Refine to state the
value is signed.
* simplify-rtx.c (mode_signbit_p): Add a fixme for wider than
CONST_DOUBLE integers.
(simplify_const_unary_operation, UNSIGNED_FLOAT): Ensure no
negative values are converted. Fix conversions bigger than
HOST_BITS_PER_WIDE_INT.
(simplify_binary_operation_1): Ensure we don't use shift
incorrectly.
(simplify_immed_subreg): Sign-extend CONST_DOUBLEs.
* explow.c (plus_constant_mode): Add.
(plus_constant): Implement with plus_constant_mode.
* rtl.h (plus_constant_mode): Add.
From-SVN: r186147
Ian Lance Taylor [Wed, 4 Apr 2012 18:50:09 +0000 (18:50 +0000)]
syscall: Add more constants.
From-SVN: r186144
Uros Bizjak [Wed, 4 Apr 2012 17:25:27 +0000 (19:25 +0200)]
Partially revert:
2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/52689
* src/c++98/compatibility-ldbl.cc: Guard with PIC
From-SVN: r186142
H.J. Lu [Wed, 4 Apr 2012 15:49:23 +0000 (15:49 +0000)]
Use long long in gtm_jmpbuf for x86-64
2012-04-04 H.J. Lu <hongjiu.lu@intel.com>
PR libitm/52854
* config/x86/target.h (gtm_jmpbuf): Replace long with long long
for x86-64.
From-SVN: r186140
Jason Merrill [Wed, 4 Apr 2012 14:40:51 +0000 (10:40 -0400)]
re PR c++/52845 (non-void return type deduced for lambda with empty compound statement)
PR c++/52845
* decl.c (finish_function): Update fntype after deducing return type.
From-SVN: r186139
Richard Guenther [Wed, 4 Apr 2012 12:12:00 +0000 (12:12 +0000)]
re PR bootstrap/52808 (LTO bootstrap failed with bootstrap-profiled)
2012-04-04 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52808
* tracer.c (tail_duplicate): Do not tail-duplicate loop header
blocks.
* Makefile.in (tracer.o): Depend on $(CFGLOOP_H).
From-SVN: r186135
Tristan Gingold [Wed, 4 Apr 2012 08:44:30 +0000 (08:44 +0000)]
pex-unix.c (to_ptr32): Fix style.
2012-04-04 Tristan Gingold <gingold@adacore.com>
* pex-unix.c (to_ptr32): Fix style.
From-SVN: r186134
Tristan Gingold [Wed, 4 Apr 2012 08:26:34 +0000 (08:26 +0000)]
expr.c (expand_expr_real_2): Handle larger sizetype in POINTER_PLUS_EXPR.
2012-04-04 Tristan Gingold <gingold@adacore.com>
* expr.c (expand_expr_real_2): Handle larger sizetype in
POINTER_PLUS_EXPR.
From-SVN: r186133
Tristan Gingold [Wed, 4 Apr 2012 07:46:53 +0000 (07:46 +0000)]
libgfortran.h: Include complex.h before math.h
2012-04-04 Tristan Gingold <gingold@adacore.com>
* libgfortran.h: Include complex.h before math.h
From-SVN: r186131
GCC Administrator [Wed, 4 Apr 2012 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186128
Ian Lance Taylor [Tue, 3 Apr 2012 23:44:53 +0000 (23:44 +0000)]
syscall, net: Fix GNU/Linux netlink code for big-endian systems.
From-SVN: r186123
Jason Merrill [Tue, 3 Apr 2012 23:38:21 +0000 (19:38 -0400)]
re PR c++/52796 ([C++11] Initialization of primitive object with 0-length parameter pack fails to value-initialize)
PR c++/52796
* pt.c (tsubst_initializer_list): A pack expansion with no elements
means value-initialization.
From-SVN: r186122
Kaz Kojima [Tue, 3 Apr 2012 21:23:05 +0000 (21:23 +0000)]
t-sh (MULTILIB_MATCHES): Match m2a-single-only to m2a-single instead of m2e.
* config/sh/t-sh (MULTILIB_MATCHES): Match m2a-single-only
to m2a-single instead of m2e.
From-SVN: r186116
Ian Lance Taylor [Tue, 3 Apr 2012 19:42:24 +0000 (19:42 +0000)]
mksysinfo.sh: Add some more networking constants.
From-SVN: r186114
Ian Lance Taylor [Tue, 3 Apr 2012 18:26:57 +0000 (18:26 +0000)]
gotest: Fix finding functions on PPC.
From-SVN: r186112
Eric Botcazou [Tue, 3 Apr 2012 17:59:07 +0000 (17:59 +0000)]
expr.c (get_bit_range): Add OFFSET parameter and adjust BITPOS.
* expr.c (get_bit_range): Add OFFSET parameter and adjust BITPOS.
Change type of BITOFFSET to signed. Make sure the lower bound of
the computed range is non-negative by adjusting OFFSET and BITPOS.
(expand_assignment): Adjust call to get_bit_range.
From-SVN: r186110
Sandeep Kumar Singh [Tue, 3 Apr 2012 17:09:53 +0000 (17:09 +0000)]
h8300.c (h8300_current_function_monitor_function_p): New function.
* h8300/h8300.c (h8300_current_function_monitor_function_p):
New function. Added to check monitor functions.
(h8300_option_override): Modified to generate error/warning
messages for invalid combinations of different command line
options.
* h8300/h8300.md: Generate 'rte' for monitor functions. Do not
save EXR on stack for monitor function in case of H8S target
when "-mno-exr" is passed.
* h8300/h8300-protos.h
(h8300_current_function_monitor_function_p): Add prototype.
* doc/invoke.texi: Document H8S options.
From-SVN: r186109
Tristan Gingold [Tue, 3 Apr 2012 12:07:28 +0000 (12:07 +0000)]
mmap.m4: Use *vms* instead of vms*.
config/
2012-04-03 Tristan Gingold <gingold@adacore.com>
* mmap.m4: Use *vms* instead of vms*.
gcc/
2012-04-03 Tristan Gingold <gingold@adacore.com>
* configure.ac: Use GCC_AC_FUNC_MMAP_BLACKLIST instead
of gcc_AC_FUNC_MMAP_BLACKLIST.
* acinclude.m4 (gcc_AC_FUNC_MMAP_BLACKLIST): Remove.
* Makefile.in (aclocal_deps): Add mmap.m4.
* configure: Regenerate.
* aclocal.m4: Regenerate.
libitm/
2012-04-03 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
From-SVN: r186106
Richard Guenther [Tue, 3 Apr 2012 11:38:04 +0000 (11:38 +0000)]
re PR bootstrap/52808 (LTO bootstrap failed with bootstrap-profiled)
2012-04-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52808
* tracer.c (tail_duplicate): Return whether we have duplicated
any block.
(tracer): If we have duplicated any block, cleanup the CFG.
* cfghooks.c (duplicate_block): If we duplicated a loop
header but not its loop, destroy the loop because it now has
multiple entries.
* tree-ssa-threadupdate.c (thread_through_loop_header): Tell
the cfg manipulation routines we are not creating a multiple
entry loop.
* gcc.dg/pr52808.c: New testcase.
From-SVN: r186104
Tristan Gingold [Tue, 3 Apr 2012 08:53:48 +0000 (08:53 +0000)]
vms-c.c (vms_pragma_nomember_alignment): Handle 'byte' alignment.
2012-04-03 Tristan Gingold <gingold@adacore.com>
* config/vms/vms-c.c (vms_pragma_nomember_alignment): Handle
'byte' alignment.
(vms_c_common_override_options): Allow parameterless variadic
functions.
From-SVN: r186102
Jakub Jelinek [Tue, 3 Apr 2012 08:49:14 +0000 (10:49 +0200)]
re PR middle-end/52835 (-O3 wrongly optimizes loop __builtin_memcpy away)
PR tree-optimization/52835
* tree-data-ref.c (build_rdg): Return NULL if
compute_data_dependences_for_loop failed.
* gfortran.dg/pr52835.f90: New test.
From-SVN: r186101
Eric Botcazou [Tue, 3 Apr 2012 07:11:25 +0000 (07:11 +0000)]
varasm.c (initializer_constant_valid_for_bitfield_p): Return true for REAL_CST as well.
* varasm.c (initializer_constant_valid_for_bitfield_p): Return true
for REAL_CST as well.
(output_constructor): Use RECORD_OR_UNION_TYPE_P predicate.
In the bitfield case, if the value is a REAL_CST, convert it first to
an INTEGER_CST.
From-SVN: r186100
H.J. Lu [Tue, 3 Apr 2012 02:56:34 +0000 (02:56 +0000)]
Add --with-abi= support to x86_64-*-*
2012-04-02 H.J. Lu <hongjiu.lu@intel.com>
* config.gcc: Use i386/biarchx32.h instead of i386/biarch64.h
for --with-abi={x32|mx32} or --with-multilib-list=mx32.
(supported_defaults): Add abi for i[34567]86-*-* and x86_64-*-*.
* config/i386/biarchx32.h: New.
From-SVN: r186099
GCC Administrator [Tue, 3 Apr 2012 00:17:14 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r186097
Anatoly Sokolov [Mon, 2 Apr 2012 18:45:13 +0000 (22:45 +0400)]
arm.h (PREFERRED_RELOAD_CLASS): Remove.
* config/arm/arm.h (PREFERRED_RELOAD_CLASS): Remove.
* config/arm/arm.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
(arm_preferred_reload_class): New function.
From-SVN: r186092
Peter Bergner [Mon, 2 Apr 2012 18:29:22 +0000 (13:29 -0500)]
ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
Silence casting pointer to integer of different size warning.
Delete goto to previously deleted label.
(ffi_call): Silence possibly undefined warning.
(ffi_closure_helper_SYSV): Declare variable type.
From-SVN: r186091
H.J. Lu [Mon, 2 Apr 2012 16:17:21 +0000 (16:17 +0000)]
Update x32 rt_sigreturn syscall number to 0x40000201
2012-04-02 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/linux-unwind.h (RT_SIGRETURN_SYSCALL): Update x32
system call number.
From-SVN: r186087
Richard Guenther [Mon, 2 Apr 2012 15:13:45 +0000 (15:13 +0000)]
re PR middle-end/52756 (255.vortex in SPEC CPU 2000 failed to build)
2012-04-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52756
* tree-ssa-threadupdate.c (def_split_header_continue_p): New function.
(thread_through_loop_header): After threading through the loop latch
remove the split part from the loop and clear further threading
opportunities that would create a multiple entry loop.
* gcc.dg/torture/pr52756.c: New testcase.
From-SVN: r186085
Rainer Orth [Mon, 2 Apr 2012 12:35:32 +0000 (12:35 +0000)]
Fix .jcr alignment
From-SVN: r186082
Richard Guenther [Mon, 2 Apr 2012 12:00:30 +0000 (12:00 +0000)]
re PR middle-end/52800 (eglibc build broken with internal compiler error in cfgloop .)
2012-04-02 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/52800
* cprop.c (execute_rtl_cprop): Call cleanup_cfg with
CLEANUP_CFG_CHANGED.
From-SVN: r186081
Richard Guenther [Mon, 2 Apr 2012 11:59:47 +0000 (11:59 +0000)]
re PR rtl-optimization/52803 (ICE: in ira, at ira.c:3616 with -fno-move-loop-invariants on almost any code)
2012-04-02 Richard Guenther <rguenther@suse.de>
PR middle-end/52803
* loop-init.c (gate_handle_loop2): Destroy loops here if
we don't enter RTL loop optimizers.
* gcc.dg/pr52803.c: New testcase.
From-SVN: r186080
Arnaud Charlet [Mon, 2 Apr 2012 10:51:58 +0000 (12:51 +0200)]
[multiple changes]
2012-04-02 Robert Dewar <dewar@adacore.com>
* s-atopri.ads: Minor reformatting.
2012-04-02 Thomas Quinot <quinot@adacore.com>
* sem_util.adb: Minor reformatting, minor code cleanup.
2012-04-02 Ed Schonberg <schonberg@adacore.com>
* lib-xref.adb (Generate_Reference): For a reference to an
operator symbol, set the sloc to point to the first character
of the operator name, and not to the initial quaote.
(Output_References): Ditto for the definition of an operator
symbol.
2012-04-02 Vincent Celier <celier@adacore.com>
* ali.adb (Scan_Ali): Recognize Z lines. Set
Implicit_With_From_Instantiation to True in the With_Record for
Z lines.
* ali.ads (With_Record): New Boolean component
Implicit_With_From_Instantiation, defaulted to False.
* csinfo.adb: Indicate that Implicit_With_From_Instantiation
is special
* lib-writ.adb (Write_ALI): New array Implicit_With.
(Collect_Withs): Set Implicit_With for the unit is it is not Yes.
(Write_With_Lines): Write a Z line instead of a W line if
Implicit_With is Yes for the unit.
* sem_ch12.adb (Inherit_Context): Only add a unit in the context
if it is not there yet.
* sinfo.ads: New flag Implicit_With_From_Instantiation (Flag12)
added.
From-SVN: r186079
Uros Bizjak [Mon, 2 Apr 2012 10:04:10 +0000 (12:04 +0200)]
Partially revert:
2012-03-29 Richard Guenther <rguenther@suse.de>
* rtl.h (extended_count): Remove.
* combine.c (extended_count): Remove.
From-SVN: r186077
Arnaud Charlet [Mon, 2 Apr 2012 09:47:18 +0000 (11:47 +0200)]
[multiple changes]
2012-04-02 Yannick Moy <moy@adacore.com>
* osint.adb, osint.ads (Add_Default_Search_Dirs): Add library
search dirs in file specified with option -gnateO.
2012-04-02 Robert Dewar <dewar@adacore.com>
* sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb: Minor
reformatting.
2012-04-02 Olivier Hainque <hainque@adacore.com>
* g-sse.ads: Add x86-solaris and x86_64-darwin to the set of
platforms where the use of this spec is supported. Add current
year to the copyright notice.
* gcc-interfaces/Makefile.in: Add g-sse.o and g-ssvety.o to
EXTRA_GNATRTL_NONTASKING_OBJS on x86 32/64 targets that support
it and where they were missing (x86-solaris, x86-freebsd,
x86_64-freebsd, and x86-darwin).
2012-04-02 Gary Dismukes <dismukes@adacore.com>
* bindgen.adb (Gen_Ada_Init): When compiling for the AAMP small
library, where we no longer suppress the Standard_Library,
generate an empty body rather than the usual generation of
assignments to imported globals, since those aren't present in
the small library.
2012-04-02 Ed Schonberg <schonberg@adacore.com>
* sinfo.ads: Minor documentation fix.
2012-04-02 Hristian Kirtchev <kirtchev@adacore.com>
* sem_res.adb (Resolve_Conditional_Expression): Add local variables
Else_Typ and Then_Typ. Add missing type conversions to the "then" and
"else" expressions when their respective types are scalar.
2012-04-02 Vincent Pucci <pucci@adacore.com>
* exp_ch9.adb: Reordering of the local subprograms. New Table
for the lock free implementation that maps each protected
subprograms with the protected component it references.
(Allow_Lock_Free_Implementation): New routine. Check if
the protected body enables the lock free implementation.
(Build_Lock_Free_Protected_Subprogram_Body): New routine.
(Build_Lock_Free_Unprotected_Subprogram_Body): New routine.
(Comp_Of): New routine.
* Makefile.rtl: Add s-atopri.o
* debug.adb: New compiler debug flag -gnatd9 for lock free
implementation.
* rtsfind.ads: RE_Atomic_Compare_Exchange_8,
RE_Atomic_Compare_Exchange_16, RE_Atomic_Compare_Exchange_32,
RE_Atomic_Compare_Exchange_64, RE_Atomic_Load_8,
RE_Atomic_Load_16, RE_Atomic_Load_32, RE_Atomic_Load_64, RE_Uint8,
RE_Uint16, RE_Uint32, RE_Uint64 added.
* s-atropi.ads: New file. Defines atomic primitives used
by the lock free implementation.
From-SVN: r186076
Arnaud Charlet [Mon, 2 Apr 2012 09:28:52 +0000 (11:28 +0200)]
[multiple changes]
2012-04-02 Emmanuel Briot <briot@adacore.com>
* g-expect.adb (Expect_Internal): Fix leak of the input file descriptor.
2012-04-02 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch4.adb (Expand_N_Quantified_Expression): Reimplemented.
The expansion no longer uses the copy of the original QE created
during analysis.
* sem.adb (Analyze): Add processing for loop parameter specifications.
* sem_ch4.adb (Analyze_Quantified_Expression): Reimplemented. The
routine no longer creates a copy of the original QE. All
constituents of a QE are now preanalyzed and resolved.
* sem_ch5.adb (Analyze_Iteration_Scheme): Remove the guard which
bypasses all processing when the iteration scheme is related to a
QE. Relovate the code which analyzes loop parameter specifications
to a separate routine. (Analyze_Iterator_Specification):
Preanalyze the iterator name. This action was originally
done in Analyze_Iteration_Scheme. Update the check which
detects an iterator specification in the context of a QE.
(Analyze_Loop_Parameter_Specification): New routine. This
procedure allows for a stand-alone analysis of a loop parameter
specification without the need of a parent iteration scheme. Add
code to update the type of the loop variable when the range
generates an itype and the context is a QE.
(Pre_Analyze_Range): Renamed to Preanalyze_Range. Update all references
to the routine.
* sem_ch5.ads: Code reformatting.
(Analyze_Loop_Parameter_Specification): New routine.
* sem_ch6.adb (Fully_Conformant_Expressions): Detect a case
when establishing conformance between two QEs utilizing different
specifications.
* sem_res.adb (Proper_Current_Scope): New routine.
(Resolve): Do not resolve a QE as there is nothing to be done now.
Ignore any loop scopes generated for QEs when detecting an expression
function as the scopes are cosmetic and do not appear in the tree.
(Resolve_Quantified_Expression): Removed. All resolution of
QE constituents is now performed during analysis. This ensures
that loop variables appearing in array aggregates are properly
resolved.
2012-04-02 Ed Schonberg <schonberg@adacore.com>
* sem_util.adb (Build_Default_Subtype): If the base type is
private and its full view is available, use the full view in
the subtype declaration.
From-SVN: r186074
Arnaud Charlet [Mon, 2 Apr 2012 09:26:25 +0000 (11:26 +0200)]
Complete previous change.
From-SVN: r186073
Arnaud Charlet [Mon, 2 Apr 2012 09:25:18 +0000 (11:25 +0200)]
[multiple changes]
2012-04-02 Jose Ruiz <ruiz@adacore.com>
* gnat_ugn.texi: Add some minimal documentation about how to
use GNATtest for cross platforms.
2012-04-02 Vincent Celier <celier@adacore.com>
* opt.ads (Object_Path_File_Name): New variable.
* prj-attr.adb: New Compiler attribute Object_Path_Switches.
* prj-nmsc.adb (Process_Compiler): Recognize new attribute
Object_Path_Switches.
* snames.ads-tmpl: New standard name Object_Path_Switches.
* switch-c.adb (Scan_Front_End_Switches): Recognize new switch
-gnateO= and put its value in Opt.Object_Path_File_Name.
From-SVN: r186072
Arnaud Charlet [Mon, 2 Apr 2012 09:23:01 +0000 (11:23 +0200)]
[multiple changes]
2012-04-02 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch7.adb (Process_Declarations): Detect a case where
a source object was initialized by another source object,
but the expression was rewritten as a class-wide conversion
of Ada.Tags.Displace.
* exp_util.adb (Initialized_By_Ctrl_Function): Removed.
(Is_Controlled_Function_Call): New routine.
(Is_Displacement_Of_Ctrl_Function_Result): Removed.
(Is_Displacement_Of_Object_Or_Function_Result): New routine.
(Is_Source_Object): New routine.
(Requires_Cleanup_Actions): Detect a case where a source object was
initialized by another source object, but the expression was rewritten
as a class-wide conversion of Ada.Tags.Displace.
* exp_util.ads (Is_Displacement_Of_Ctrl_Function_Result): Removed.
(Is_Displacement_Of_Object_Or_Function_Result): New routine.
2012-04-02 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Resolve_Call): A call to an expression function
does not freeze if it appears in a different scope from the
expression function itself. Such calls appear in the generated
bodies of other expression functions, or in pre/postconditions
of subsequent subprograms.
From-SVN: r186071
Arnaud Charlet [Mon, 2 Apr 2012 09:19:30 +0000 (11:19 +0200)]
[multiple changes]
2012-04-02 Yannick Moy <moy@adacore.com>
* lib-xref-alfa.adb: Code clean up.
2012-04-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Analyze_Subprogram_Instantiation): Do not suppress
style checks, because the subprogram instance itself may contain
violations of syle rules.
* style.adb (Missing_Overriding): Check for missing overriding
indicator on a subprogram instance.
2012-04-02 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch6.adb (Last_Implicit_Declaration): New routine.
(Process_PPCs): Insert the body of _postconditions after the
last internally generated declaration. This ensures that actual
subtypes created for formal parameters are visible and properly
frozen as _postconditions may reference them.
From-SVN: r186070
Robert Dewar [Mon, 2 Apr 2012 09:14:47 +0000 (09:14 +0000)]
2012-04-02 Robert Dewar <dewar@adacore.com>
* einfo.adb (First_Component_Or_Discriminant) Now applies to
all types with discriminants, not just records.
* exp_attr.adb (Expand_N_Attribute): Add Scalar_Values handling
for arrays, scalars and non-variant records.
* sem_attr.adb (Analyze_Attribute): Handle Valid_Scalars
* sem_attr.ads (Valid_Scalars): Update description
* sem_util.ads, sem_util.adb (No_Scalar_Parts): New function.
From-SVN: r186069
Dodji Seketeli [Mon, 2 Apr 2012 08:51:26 +0000 (08:51 +0000)]
PR c++/40942 - Failure of template specialization partial ordering
gcc/cp/
* pt.c (more_specialized_fn): Don't apply decay conversion to
types of function parameters.
gcc/testsuite/
* g++.old-deja/g++.pt/spec40.C: Adjust to take the resolution of
DR 214 in account.
From-SVN: r186067
Tristan Gingold [Mon, 2 Apr 2012 07:59:27 +0000 (07:59 +0000)]
crossconfig.m4 (*-*-*vms*): Add.
2012-04-02 Tristan Gingold <gingold@adacore.com>
* crossconfig.m4 (*-*-*vms*): Add.
* configure: Regenerate.
From-SVN: r186066
Tristan Gingold [Mon, 2 Apr 2012 07:53:58 +0000 (07:53 +0000)]
2012-04-02 Tristan Gingold <gingold@adacore.com>
* ggc-page.c (PAGE_L1_SIZE, PAGE_L2_SIZE, LOOKUP_L1, LOOKUP_L2)
(ggc_allocated_p, lookup_page_table_entry, set_page_table_entry)
(alloc_page, init_ggc, clear_marks, struct ggc_pch_data)
(ggc_pch_this_base): Use uintptr_t instead of size_t.
From-SVN: r186065
Tristan Gingold [Mon, 2 Apr 2012 07:51:26 +0000 (07:51 +0000)]
stack-limit.c: Includes ansidecl.h.
2012-04-02 Tristan Gingold <gingold@adacore.com>
* stack-limit.c: Includes ansidecl.h.
(stack_limit_increase): Add ATTRIBUTE_UNUSED
From-SVN: r186064
Tristan Gingold [Mon, 2 Apr 2012 07:46:39 +0000 (07:46 +0000)]
math.m4 (GCC_CHECK_MATH_FUNC): Remove if-present argument.
config/
2012-04-02 Tristan Gingold <gingold@adacore.com>
* math.m4 (GCC_CHECK_MATH_FUNC): Remove if-present
argument. Define the variable.
libgfortran/
2012-04-02 Tristan Gingold <gingold@adacore.com>
* configure.ac: Use new version of GCC_CHECK_MATH_FUNC.
* configure: Regenerate
* config.h.in: Regenerate.
From-SVN: r186063
GCC Administrator [Mon, 2 Apr 2012 00:17:25 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r186062
Paolo Carlini [Mon, 2 Apr 2012 00:13:30 +0000 (00:13 +0000)]
re PR c++/50043 ([C++0x] Implement core/1123)
/cp
2012-04-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50043
* class.c (deduce_noexcept_on_destructor,
deduce_noexcept_on_destructors): New.
(check_bases_and_members): Call the latter.
* decl.c (grokfndecl): Call the former.
* method.c (implicitly_declare_fn): Not static.
* cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
Declare
/testsuite
2012-04-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/50043
* g++.dg/cpp0x/noexcept17.C: New.
* g++.old-deja/g++.eh/cleanup1.C: Adjust.
* g++.dg/tree-ssa/ehcleanup-1.C: Likewise.
* g++.dg/cpp0x/noexcept01.C: Likewise.
* g++.dg/eh/init-temp1.C: Likewise.
* g++.dg/eh/ctor1.C: Likwise.
From-SVN: r186058
Jonathan Wakely [Sun, 1 Apr 2012 22:04:54 +0000 (22:04 +0000)]
re PR libstdc++/52591 ([C++0x] [4.7 Regression] moving std::vector relies on movable elements)
PR libstdc++/52591
* include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
to _M_move_assign depending on whether allocator is moved.
(vector::_M_move_assign): Add overloaded functions.
* testsuite/23_containers/vector/52591.cc: New.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r186057
Jonathan Wakely [Sun, 1 Apr 2012 17:10:57 +0000 (17:10 +0000)]
functional (__callable_functor): Overload for volatile-qualified pointers.
* include/std/functional (__callable_functor): Overload for
volatile-qualified pointers.
* testsuite/20_util/function/10.cc: New.
From-SVN: r186055
GCC Administrator [Sun, 1 Apr 2012 00:18:23 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186054
H.J. Lu [Sat, 31 Mar 2012 21:08:22 +0000 (21:08 +0000)]
Handle -mx32 like -m64
libgomp/
2012-03-31 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/52812
* configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
libitm/
2012-03-31 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/52812
* configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
From-SVN: r186050
H.J. Lu [Sat, 31 Mar 2012 21:03:36 +0000 (21:03 +0000)]
Don't check TARGET_64BIT if TARGET_64BIT_DEFAULT is false
2012-03-31 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/52784
* config/i386/i386.c (ix86_option_override_internal): Don't
check TARGET_64BIT if TARGET_64BIT_DEFAULT is false.
From-SVN: r186049
Eric Botcazou [Sat, 31 Mar 2012 17:21:01 +0000 (17:21 +0000)]
tree-cfg.c (call_can_make_abnormal_goto): New predicate.
* tree-cfg.c (call_can_make_abnormal_goto): New predicate.
(stmt_can_make_abnormal_goto): Use it.
(is_ctrl_altering_stmt): Likewise.
From-SVN: r186047
Eric Botcazou [Sat, 31 Mar 2012 16:24:04 +0000 (16:24 +0000)]
unwind-ia64.c (uw_install_context): Manually save LC if it hasn't been previously saved.
* config/ia64/unwind-ia64.c (uw_install_context): Manually save LC
if it hasn't been previously saved.
From-SVN: r186045
Eric Botcazou [Sat, 31 Mar 2012 08:27:32 +0000 (08:27 +0000)]
Revert
2012-03-25 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/decl.c (SS_MARK_NAME): New define.
(gnat_to_gnu_entity) <E_Function>: Prepend leaf attribute on entities
whose name is SS_MARK_NAME.
From-SVN: r186038
Jeffrey Yasskin [Sat, 31 Mar 2012 01:56:55 +0000 (01:56 +0000)]
re PR libstdc++/52799 (deque::emplace(iterator, ...) tries to call push_front(...), which doesn't exist)
2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/52799
* include/bits/deque.tcc (emplace): Fix thinko, replace push_front
-> emplace_front, and likewise for *_back.
* testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
* testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
* testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r186035
GCC Administrator [Sat, 31 Mar 2012 00:19:50 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r186034
Ian Lance Taylor [Fri, 30 Mar 2012 22:36:44 +0000 (22:36 +0000)]
libgo: Update to weekly.2012-03-27 aka go1 release.
From-SVN: r186029
Ian Lance Taylor [Fri, 30 Mar 2012 22:14:14 +0000 (22:14 +0000)]
File removed in weekly.2012-03-22 release.
From-SVN: r186028
Ian Lance Taylor [Fri, 30 Mar 2012 22:09:55 +0000 (22:09 +0000)]
libgo: Update to weekly.2012-03-22.
From-SVN: r186026
Naveen H.S [Fri, 30 Mar 2012 21:41:45 +0000 (21:41 +0000)]
sh.c (push_regs): Skip banked registers when resbank attribute is specified.
* config/sh/sh.c (push_regs): Skip banked registers when
resbank attribute is specified.
(sh_expand_epilogue): Likewise.
Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r186024
Ian Lance Taylor [Fri, 30 Mar 2012 21:27:11 +0000 (21:27 +0000)]
libgo: Update to weekly.2012-03-13.
From-SVN: r186023
Ian Lance Taylor [Fri, 30 Mar 2012 21:10:32 +0000 (21:10 +0000)]
syscall: Convert errno to error after Exitsyscall.
From-SVN: r186020
Richard Henderson [Fri, 30 Mar 2012 18:23:06 +0000 (11:23 -0700)]
re PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)
PR debug/52727
* g++.dg/opt/pr52727.C: New testcase.
From-SVN: r186019
Richard Henderson [Fri, 30 Mar 2012 18:00:37 +0000 (11:00 -0700)]
re PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)
PR debug/52727
* combine-stack-adj.c (prev_active_insn_bb): New.
(next_active_insn_bb): New.
(force_move_args_size_note): New.
(combine_stack_adjustments_for_block): Use it.
From-SVN: r186018
Richard Henderson [Fri, 30 Mar 2012 18:00:21 +0000 (11:00 -0700)]
i386: Add and use one_operand_p to vec_perm control struct.
* config/i386/i386.c (struct expand_vec_perm_d): Add one_operand_p.
(ix86_expand_vector_init_duplicate): Initialize it.
(expand_vec_perm_palignr): Likewise.
(ix86_expand_vec_perm_const): Likewise.
(ix86_vectorize_vec_perm_const_ok): Likewise.
(expand_vec_perm_blend): Use it.
(expand_vec_perm_vpermil): Likewise.
(expand_vec_perm_pshufb): Likewise.
(expand_vec_perm_1): Likewise.
(expand_vec_perm_pshuflw_pshufhw): Likewise.
(expand_vec_perm_interleave2): Likewise.
(expand_vec_perm_vpermq_perm_1): Likewise.
(expand_vec_perm_vperm2f128): Likewise.
(expand_vec_perm_interleave3): Likewise.
(expand_vec_perm_vperm2f128_vblend): Likewise.
(expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq_even_odd): Likewise,.
(expand_vec_perm_broadcast): Likewise.
(expand_vec_perm_vpshufb4_vpermq2): Likewise.
From-SVN: r186017