| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
PR c++/49813
* semantics.c (potential_constant_expression_1): Handle FMA_EXPR.
Checking this in for Paolo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176899 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* frontend-passes.c (optimize_minmaxloc): New function.
(optimize_expr): Call it.
* gfortran.dg/maxloc_2.f90: New test.
* gfortran.dg/maxloc_3.f90: New test.
* gfortran.dg/minloc_1.f90: New test.
* gfortran.dg/minloc_2.f90: New test.
* gfortran.dg/minloc_3.f90: New test.
* gfortran.dg/minmaxloc_7.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176897 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
* var-tracking.c (prepare_call_arguments): For non-MODE_INT stack
arguments also check if they aren't initialized with a MODE_INT
mode of the same size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176892 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176891 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* reorg.c (first_active_target_insn): New static function.
(find_end_label): Set JUMP_LABEL for a new returnjump.
(optimize_skip, get_jump_flags, rare_destination,
mostly_true_jump, get_branch_condition,
steal_delay_list_from_target, own_thread_p,
fill_simple_delay_slots, follow_jumps, fill_slots_from_thread,
fill_eager_delay_slots, relax_delay_slots, make_return_insns,
dbr_schedule): Adjust to handle ret_rtx in JUMP_LABELs.
* jump.c (delete_related_insns): Likewise.
(jump_to_label_p): New function.
(redirect_target): New static function.
(redirect_exp_1): Use it. Adjust to handle ret_rtx in JUMP_LABELS.
(redirect_jump_1): Assert that the new label is nonnull.
(redirect_jump): Likewise.
(redirect_jump_2): Check for ANY_RETURN_P rather than NULL labels.
* ifcvt.c (find_if_case_1): Take care when redirecting jumps to the
exit block.
(dead_or_predicable): Change NEW_DEST arg to DEST_EDGE. All callers
changed. Ensure that the right label is passed to redirect_jump.
* function.c (emit_return_into_block,
thread_prologue_and_epilogue_insns): Ensure new returnjumps have
ret_rtx in their JUMP_LABEL.
* print-rtl.c (print_rtx): Handle ret_rtx in a JUMP_LABEL.
* emit-rtl.c (skip_consecutive_labels): Allow the caller to
pass ret_rtx as label.
* cfglayout.c (fixup_reorder_chain): Use
force_nonfallthru_and_redirect rather than force_nonfallthru.
(duplicate_insn_chain): Copy JUMP_LABELs for returns.
* rtl.h (ANY_RETURN_P): New macro.
(jump_to_label_p): Declare.
* resource.c (find_dead_or_set_registers): Handle ret_rtx in
JUMP_LABELs.
(mark_target_live_regs): Likewise.
* basic-block.h (force_nonfallthru_and_redirect): Declare.
* cfgrtl.c (force_nonfallthru_and_redirect): No longer static.
* config/alpha/alpha.c (alpha_tablejump_addr_vec,
alpha_tablejump_best_label): Remove functions.
* config/alpha/alpha-protos.c (alpha_tablejump_addr_vec,
alpha_tablejump_best_label): Remove declarations.
* config/sh/sh.c (barrier_align, split_branches): Adjust for
ret_rtx in JUMP_LABELs.
* config/arm/arm.c (is_jump_table): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176881 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
special predicate. Remove explicit mode checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176879 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
optimize DW_AT_data_member_location containing just
DW_OP_plus_uconst.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176878 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* dwarf2out.c (size_of_die, value_format, output_die): Use
DW_FORM_udata instead of DW_FORM_data[48] for
dw_val_class_unsigned_const DW_AT_data_member_location for DWARF 3.
* gcc.dg/debug/dwarf2/pr49871.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176876 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176874 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md (*tls_global_dynamic_64): Update length
attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176873 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* config/i386/i386.md (*tls_global_dynamic_64): Remove mode from
tls_symbolic_operand check. Update code sequence for TARGET_X32.
(tls_global_dynamic_64): Remove mode from tls_symbolic_operand check.
(tls_dynamic_gnu2_64): Ditto.
(*tls_dynamic_gnu2_lea_64): Ditto.
(*tls_dynamic_gnu2_call_64): Ditto.
(*tls_dynamic_gnu2_combine_64): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176872 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc/
2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
* config.gcc: Set need_64bit_hwint to yes for x86 targets.
libcpp/
2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac: Set need_64bit_hwint to yes for x86 targets.
* configure: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176871 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
(__gnat_install_handler): Explain sa_sigaction use.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176870 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
PR target/47364
* config/i386/i386.md (strlen<mode>): Replace SWI48x with P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176868 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* config/arm/vfp.md ("*movdf_vfp"): Handle the VFP constraints
before the core constraints. Adjust attributes.
(*thumb2_movdf_vfp"): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176867 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tree-vrp.c (simplify_stmt_using_ranges): Remove
TRUTH_NOT_EXPR case.
(simplify_truth_ops_using_ranges): Likewise.
(build_assert_expr_for): Likewise.
(build_assert_expr_for_1): Remove TRUTH_NOT_EXPR case
and handle BIT_NOT_EXPR for truth-operation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176866 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
Undo r176835 from trunk
2011-07-27 Georg-Johann Lay
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176865 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR target/49687
* config/avr/t-avr (LIB1ASMFUNCS): Remove _xmulhisi3_exit.
Add _muluhisi3, _mulshisi3, _usmulhisi3.
* config/avr/libgcc.S (__mulsi3): Rewrite.
(__mulhisi3): Rewrite.
(__umulhisi3): Rewrite.
(__usmulhisi3): New.
(__muluhisi3): New.
(__mulshisi3): New.
(__mulohisi3): New.
(__mulqi3, __mulqihi3, __umulqihi3, __mulhi3): Use DEFUN/ENDF to
declare.
* config/avr/predicates.md (pseudo_register_operand): Rewrite.
(pseudo_register_or_const_int_operand): New.
(combine_pseudo_register_operand): New.
(u16_operand): New.
(s16_operand): New.
(o16_operand): New.
* config/avr/avr.c (avr_rtx_costs): Handle costs for mult:SI.
* config/avr/avr.md (QIHI, QIHI2): New mode iterators.
(any_extend, any_extend2): New code iterators.
(extend_prefix): New code attribute.
(mulsi3): Rewrite. Turn insn to expander.
(mulhisi3): Ditto.
(umulhisi3): Ditto.
(usmulhisi3): New expander.
(*mulsi3): New insn-and-split.
(mulu<mode>si3): New insn-and-split.
(muls<mode>si3): New insn-and-split.
(mulohisi3): New insn-and-split.
(*uumulqihisi3, *uumulhiqisi3, *uumulhihisi3, *uumulqiqisi3,
*usmulqihisi3, *usmulhiqisi3, *usmulhihisi3, *usmulqiqisi3,
*sumulqihisi3, *sumulhiqisi3, *sumulhihisi3, *sumulqiqisi3,
*ssmulqihisi3, *ssmulhiqisi3, *ssmulhihisi3, *ssmulqiqisi3): New
insn-and-split.
(*mulsi3_call): Rewrite.
(*mulhisi3_call): Rewrite.
(*umulhisi3_call): Rewrite.
(*usmulhisi3_call): New insn.
(*muluhisi3_call): New insn.
(*mulshisi3_call): New insn.
(*mulohisi3_call): New insn.
(extendqihi2): Use combine_pseudo_register_operand as predicate
for operand 1.
(extendqisi2): Ditto.
(zero_extendqihi2): Ditto.
(zero_extendqisi2): Ditto.
(zero_extendhisi2): Ditto.
(extendhisi2): Ditto. Don't early-clobber operand 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176862 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176860 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
the builtin isn't optimized away.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176859 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176856 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR fortran/45586
* trans-types.c (gfc_get_derived_type): Ensure that pointer
component types are marked as nonrestricted.
2011-07-27 Tobias Burnus <burnus@net-b.de>
PR fortran/45586
* gfortran.dg/lto/pr45586-2_0.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176852 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* c-c++-common/cxxbitfields-4.c: Check for smaller than long
moves.
* c-c++-common/cxxbitfields-5.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176848 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
check_function_available.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176846 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
template_decl built out of it. Without this, specializations
generated before the template was defined get the location of the
closing ')' instead of the location of the template's name, which can
produce inconsistent locations between translation units, which makes
gold's ODR checker unhappy.
* gcc/cp/pt.c (build_template_decl): Copy the function_decl's source
location to the new template_decl.
* gcc/testsuite/g++.old-deja/g++.pt/crash60.C: Updated.
* libstdc++-v3/testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176845 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* gcc.target/i386/pr49866.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176842 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-27 Yukhin Kirill <kirill.yukhin@intel.com>
* gcc.target/i386/i386.exp (check_effective_target_bmi): New.
* gcc.target/i386/bmi-andn-1.c: New test.
* gcc.target/i386/bmi-andn-1a.c: Likewise.
* gcc.target/i386/bmi-andn-2.c: Likewise.
* gcc.target/i386/bmi-andn-2a.c: Likewise.
* gcc.target/i386/bmi-bextr-1.c: Likewise.
* gcc.target/i386/bmi-bextr-1a.c: Likewise.
* gcc.target/i386/bmi-bextr-2.c: Likewise.
* gcc.target/i386/bmi-bextr-2a.c: Likewise.
* gcc.target/i386/bmi-blsi-1.c: Likewise.
* gcc.target/i386/bmi-blsi-1a.c: Likewise.
* gcc.target/i386/bmi-blsi-2.c: Likewise.
* gcc.target/i386/bmi-blsi-2a.c: Likewise.
* gcc.target/i386/bmi-blsmsk-1.c: Likewise.
* gcc.target/i386/bmi-blsmsk-1a.c: Likewise.
* gcc.target/i386/bmi-blsmsk-2.c: Likewise.
* gcc.target/i386/bmi-blsmsk-2a.c: Likewise.
* gcc.target/i386/bmi-blsr-1.c: Likewise.
* gcc.target/i386/bmi-blsr-1a.c: Likewise.
* gcc.target/i386/bmi-blsr-2.c: Likewise.
* gcc.target/i386/bmi-blsr-2a.c: Likewise.
* gcc.target/i386/bmi-tzcnt-1.c: Likewise.
* gcc.target/i386/bmi-tzcnt-1a.c: Likewise.
* gcc.target/i386/bmi-tzcnt-2.c: Likewise.
* gcc.target/i386/bmi-tzcnt-2a.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176840 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-27 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/49471
* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Build an unsigned
iv only when the largest type is unsigned. Do not call
lang_hooks.types.type_for_size.
* testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
* testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176838 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
2011-07-27 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/45450
* graphite-poly.c (apply_poly_transforms): Disable legality check
after an openscop read.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176837 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-27 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/47691
* graphite-clast-to-gimple.c (translate_clast_user): Update use of
copy_bb_and_scalar_dependences.
* sese.c (rename_uses): Do not call gcc_assert. Set gloog_error.
(graphite_copy_stmts_from_block): Update call to rename_uses.
(copy_bb_and_scalar_dependences): Update call to
graphite_copy_stmts_from_block.
* sese.h (copy_bb_and_scalar_dependences): Update declaration.
* gfortran.dg/graphite/id-pr47691.f: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176836 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR target/49313
* config/avr/libgcc.S (__ffshi2): Don't skip 2-word instruction.
(__ctzsi2): Result for 0 may be undefined.
(__ctzhi2): Result for 0 may be undefined.
(__popcounthi2): Don't clobber r30. Use __popcounthi2_tail.
(__popcountsi2): Ditto. And don't clobber r26.
(__popcountdi2): Ditto. And don't clobber r27.
* config/avr/avr.md (UNSPEC_COPYSIGN): New c_enum.
(parityhi2): New expand.
(paritysi2): New expand.
(popcounthi2): New expand.
(popcountsi2): New expand.
(clzhi2): New expand.
(clzsi2): New expand.
(ctzhi2): New expand.
(ctzsi2): New expand.
(ffshi2): New expand.
(ffssi2): New expand.
(copysignsf3): New insn.
(bswapsi2): New expand.
(*parityhi2.libgcc): New insn.
(*parityqihi2.libgcc): New insn.
(*paritysihi2.libgcc): New insn.
(*popcounthi2.libgcc): New insn.
(*popcountsi2.libgcc): New insn.
(*popcountqi2.libgcc): New insn.
(*popcountqihi2.libgcc): New insn-and-split.
(*clzhi2.libgcc): New insn.
(*clzsihi2.libgcc): New insn.
(*ctzhi2.libgcc): New insn.
(*ctzsihi2.libgcc): New insn.
(*ffshi2.libgcc): New insn.
(*ffssihi2.libgcc): New insn.
(*bswapsi2.libgcc): New insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176835 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
the mode of symbolic_opreand RTXes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176834 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
pic32_bit_operand operands.
* config/i386/i386.c (ix86_expand_move): Check x86_64_movabs_operand
in DImode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176833 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
* gcc.target/i386/avx-check.h: Include avx-os-support.h
(main): Check avx_os_support before the test is run.
* gcc.target/i386/aes-avx-check.h: Ditto.
* gcc.target/i386/pclmul-avx-check.h: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176829 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for 32-bit, too.
(ix86_handle_abi_attribute): Allow function attributes
ms_abi/sysv_abi in 32-bit mode, too.
* doc/extend.texi: Adjust attribute documentation.
* gcc.target/i386/aggregate-ret3.c: New test.
* gcc.target/i386/aggregate-ret4.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176828 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* gimple-fold.c (or_comparisons_1): Remove TRUTH_AND/OR
expression handling.
(and_var_with_comparison_1): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176827 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* params.def (PARAM_ALLOW_STORE_DATA_RACES): New.
* Makefile.in (expr.o): Depend on PARAMS_H.
* machmode.h (get_best_mode): Add argument.
* fold-const.c (optimize_bit_field_compare): Add argument to
get_best_mode.
(fold_truthop): Same.
* ifcvt.c (noce_emit_move_insn): Add argument to store_bit_field.
* expr.c (emit_group_store): Same.
(copy_blkmode_from_reg): Same.
(write_complex_part): Same.
(optimize_bitfield_assignment_op): Add argument.
Add argument to get_best_mode.
(get_bit_range): New.
(expand_assignment): Calculate maxbits and pass it down
accordingly.
(store_field): New argument.
(expand_expr_real_2): New argument to store_field.
Include params.h.
* expr.h (store_bit_field): New argument.
* stor-layout.c (get_best_mode): Restrict mode expansion by taking
into account maxbits.
* calls.c (store_unaligned_arguments_into_pseudos): New argument
to store_bit_field.
* expmed.c (store_bit_field_1): New argument. Use it.
(store_bit_field): Same.
(store_fixed_bit_field): Same.
(store_split_bit_field): Same.
(extract_bit_field_1): Pass new argument to get_best_mode.
(extract_bit_field): Same.
* stmt.c (store_bit_field): Pass new argument to store_bit_field.
* doc/invoke.texi: Document parameter allow-store-data-races.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176824 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR fortran/49755
* trans.c (gfc_allocate_using_malloc): Change function signature.
Return nothing. New parameter "pointer". Eliminate temorary variables.
(gfc_allocate_using_lib): Ditto.
(gfc_allocate_allocatable): Ditto. Update call to gfc_allocate_using_lib
and gfc_allocate_using_malloc. Do not free and then reallocate a
variable that is already allocated.
(gfc_likely): New function. Basedon gfc_unlikely.
* trans-array.c (gfc_array_init_size): New parameter "descriptor_block".
Instructions to modify the array descriptor are stored in this block
while other instructions continue to be stored in "pblock".
(gfc_array_allocate): Update call to gfc_array_init_size. Move the
descriptor_block so that the array descriptor is only updated if
the array was allocated successfully.
Update calls to gfc_allocate_allocatable and gfc_allocate_using_malloc.
* trans.h (gfc_allocate_allocatable): Change function signature.
Function now returns void.
(gfc_allocate_using_lib): Ditto, and new function parameter.
(gfc_allocate_using_malloc): Ditto.
* trans-openmp.c (gfc_omp_clause_default_ctor,
gfc_omp_clause_copy_ctor,gfc_trans_omp_array_reduction): Replace a call
to gfc_allocate_allocatable with gfc_allocate_using_malloc.
* trans-stmt.c (gfc_trans_allocate): Update function calls for
gfc_allocate_allocatable and gfc_allocate_using_malloc.
2011-07-26 Daniel Carrera <dcarrera@gmail.com>
PR fortran/49755
* gfortran.dg/multiple_allocation_1.f90: Fix test. Allocating an
allocated array should *not* change its size.
* gfortran.dg/multiple_allocation_3.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176822 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
to GC allocated copy of the string.
(dwarf2out_finish): Emit .debug_macinfo or .debug_macro sections
before .debug_line, not after it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176819 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tree-vrp.c (extract_range_from_binary_expr): Remove
TRUTH-binary cases and add new bitwise-cases.
(extract_range_from_assignment): Likewise.
(register_edge_assert_for_1): Likeiwise.
(register_edge_assert_for): Likewise.
(simplify_truth_ops_using_ranges): Likewise.
(simplify_stmt_using_ranges): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176818 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176816 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-26 H.J. Lu <hongjiu.lu@intel.com>
PR target/47372
* config/i386/i386.c (ix86_delegitimize_address): Call
simplify_gen_subreg for PIC with mode of x only if modes of
x and orig_x are different.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176812 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
to GC allocated copy of the string.
(dwarf2out_finish): Emit .debug_macinfo or .debug_macro sections
before .debug_line, not after it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176811 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/49776
* typeck.c (cp_build_modify_expr): Check digest_init return value
for error_mark_node.
/testsuite
2011-07-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/49776
* g++.dg/cpp0x/constexpr-49776.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176809 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Bug 47046 - gcc.target/i386/sse4_1-movntdqa.c ICEs with -fgraphite-identity"
The problem here is that we are left with the following code to be
translated in the new representation following the transform that
Graphite has chosen:
D.2709_14 = j_33 * i_32;
D.2710_15 = D.2709_14 * i_32;
D.2711_16 = D.2710_15 * sign_34;
*D.2708_13 = D.2711_16;
In this particular case we have a nonlinear expression "i * i" for
which we have to generate code following the new graphite_iv variables.
The patch fixes the function that detects whether we are passing non
linear stuff to graphite: evolution_function_is_affine_p. It seems
like for the moment evolution_function_is_affine_p is testing whether
an evolution function is affine only in the innermost loop, without
looking recursively at what happens in outer loops.
The chrec for this case is: {0, +, {0, +, {1, +, 2}_1}_1}_2 and we are
testing whether the evolution is affine only for the loop_2, which is
true as we have {0, +, blah}_2 with blah invariant in loop_2.
The patch adds the recursive call to evolution_function_is_affine_p.
Bootstrapped and tested on amd64-linux.
2011-07-26 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/47046
* tree-chrec.h (evolution_function_is_affine_p): Recursively call
evolution_function_is_affine_p on CHREC_RIGHT.
* gcc.dg/graphite/id-pr47046.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176805 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
2011-07-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-data-ref.c (max_stmt_executions_tree): Do not call
lang_hooks.types.type_for_size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176804 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
2011-07-26 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/47653
* gcc.dg/graphite/run-id-pr47593.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176803 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2011-07-26 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/47653
* graphite-scop-detection.c (graphite_can_represent_loop): Discard
loops using wrapping semantics.
* gcc.dg/graphite/run-id-pr47653.c: New.
* gcc.dg/graphite/interchange-3.c: Do not use unsigned types for
induction variables.
* gcc.dg/graphite/scop-16.c: Same.
* gcc.dg/graphite/scop-17.c: Same.
* gcc.dg/graphite/scop-21.c: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176802 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch we avoid instantiating ADDR_EXPR: it makes no sense
to translate &b[i] into &b[{0, +, 1}_1].
Bootstrapped and tested on amd64-linux.
2011-07-26 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/48805
* tree-scalar-evolution.c (instantiate_scev_r): Return
chrec_dont_know for ADDR_EXPR.
* gcc.dg/graphite/id-pr48805.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176801 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR target/49853
* config/i386/i386.c (ix86_expand_move): Call convert_to_mode
if legitimize_tls_address returned operand in wrong mode. Allow
SImode and DImode symbolic operand for PIC. Call convert_to_mode
if legitimize_pic_address returned operand in wrong mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176798 138bc75d-0d04-0410-961f-82ee72b054a4
|