Xinyu Qi
a76213b9b3
For Xinyu Qi - Fix define_constants for WCGR.
...
From-SVN: r197104
2013-03-26 14:01:24 +00:00
Uros Bizjak
37ff93553c
i386.md (*movdfcc_1): Merge with *movdfcc_1_rex64.
...
* config/i386/i386.md (*movdfcc_1): Merge with *movdfcc_1_rex64.
Use x64 and nox64 isa attributes.
From-SVN: r197101
2013-03-26 13:37:46 +01:00
Paolo Carlini
5cf2a08413
decl.c (grokfndecl): Handle separately <inline> and <constexpr> error messages.
...
/cp
2013-03-26 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokfndecl): Handle separately <inline> and <constexpr>
error messages.
* decl.c (grokdeclarator): Declare typedef_p and use it everywhere.
/testsuite
2013-03-26 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/constexpr-friend-2.C: New.
* g++.dg/cpp0x/constexpr-main.C: Likewise.
From-SVN: r197097
2013-03-26 10:23:59 +00:00
Richard Biener
30b0317cb9
emit-rtl.c (set_mem_attributes_minus_bitpos): Remove alignment computations and rely on get_object_alignment_1 for the...
...
2013-03-26 Richard Biener <rguenther@suse.de>
* emit-rtl.c (set_mem_attributes_minus_bitpos): Remove
alignment computations and rely on get_object_alignment_1
for the !TYPE_P case.
Commonize DECL/COMPONENT_REF handling in the ARRAY_REF path.
From-SVN: r197095
2013-03-26 09:14:59 +00:00
Walter Lee
cbcdb1406c
tilegx.h (PROFILE_BEFORE_PROLOGUE): Define.
...
* config/tilegx/tilegx.h (PROFILE_BEFORE_PROLOGUE): Define.
* config/tilegx/tilepro.h (PROFILE_BEFORE_PROLOGUE): Define.
From-SVN: r197084
2013-03-26 05:02:28 +00:00
Walter Lee
a6406324ae
t-crtstuff: Add -fno-asynchronous-unwind-tables -mcmodel=large to CRTSTUFF_T_CFLAGS_S variable.
...
* config/tilegx/t-crtstuff: Add -fno-asynchronous-unwind-tables
-mcmodel=large to CRTSTUFF_T_CFLAGS_S variable.
From-SVN: r197083
2013-03-26 04:34:45 +00:00
Jeff Law
dd884525bb
tree-ssa-dom.c (record_equivalences_from_incoming_edge): Add missing check for INTEGRAL_TYPE_P that was missing due to checking in wrong...
...
* tree-ssa-dom.c (record_equivalences_from_incoming_edge): Add missing
check for INTEGRAL_TYPE_P that was missing due to checking in wrong
version of prior patch.
From-SVN: r197082
2013-03-25 22:00:20 -06:00
Walter Lee
0051d3ece0
tilegx-builtins.h (enum tilegx_builtin): Add TILEGX_INSN_SHUFFLEBYTES1.
...
* config/tilegx/tilegx-builtins.h (enum tilegx_builtin): Add
TILEGX_INSN_SHUFFLEBYTES1.
* config/tilegx/tilegx.c (tilegx_builtin_info): Add entry for
shufflebytes1.
(tilegx_builtins): Ditto.
* config/tilegx/tilegx.md (insn_shufflebytes1): New pattern.
From-SVN: r197080
2013-03-26 00:54:47 +00:00
Walter Lee
065a36055e
tilegx.md (floatsisf2): New pattern.
...
2013-03-25 Walter Lee <walt@tilera.com>
* config/tilegx/tilegx.md (floatsisf2): New pattern.
(floatunssisf2): New pattern.
(floatsidf2): New pattern.
(floatunssidf2): New pattern.
From-SVN: r197079
2013-03-26 00:46:35 +00:00
GCC Administrator
9b2732d64f
Daily bump.
...
From-SVN: r197078
2013-03-26 00:16:17 +00:00
Walter Lee
5b2a3c829c
tilegx.c (expand_set_cint64_one_inst): Inline tests for constraint J, K, N, P.
...
* config/tilegx/tilegx.c (expand_set_cint64_one_inst): Inline
tests for constraint J, K, N, P.
From-SVN: r197074
2013-03-25 23:59:38 +00:00
Walter Lee
192ea533be
Switch eh data to always use pc relative/indirect encoding, to avoid
...
relocations of unaligned words.
From-SVN: r197073
2013-03-25 23:50:52 +00:00
Steve Ellcey
855e0d0b07
mmips-cpus.def (74kc, [...]): Add PTF_AVOID_IMADD.
...
2013-03-25 Steve Ellcey <sellcey@mips.com>
* config/mips/mmips-cpus.def (74kc, 74kf2_1, 74kf, 74kf, 74kf1_1,
74kfx, 74kx, 74kf3_2): Add PTF_AVOID_IMADD.
* config/mips/mips.c (mips_option_override): Set IMADD default.
* config/mips/mips.h (PTF_AVOID_IMADD): New.
(ISA_HAS_MADD_MSUB): Remove MIPS16 check.
(GENERATE_MADD_MSUB): Remove TUNE_74K check, add MIPS16 check.
* config/mips/mips.md (mimadd): New flag for integer madd/msub.
* doc/invoke.texi (-mimadd/-mno-imadd): New.
From-SVN: r197072
2013-03-25 23:12:01 +00:00
Jason Merrill
f02296ddb9
re PR c++/56699 (Failed for sizeof (non-static member) in lambda expression)
...
PR c++/56699
* semantics.c (maybe_resolve_dummy): Make sure that the enclosing
class is derived from the type of the object.
From-SVN: r197069
2013-03-25 18:06:36 -04:00
Jason Merrill
b85db96a63
re PR c++/56692 ([C++11] Segmentation fault when calling static/non-static overloaded function from lambda)
...
PR c++/56692
* g++.dg/cpp0x/lambda/lambda-this15.C: New.
From-SVN: r197068
2013-03-25 18:06:27 -04:00
Jason Merrill
963afe1b0c
re PR c++/52014 ([c++0x] Segfault When decltype
Used in Nested Lambda Function Defined in Class Member Function)
...
PR c++/52014
* semantics.c (lambda_expr_this_capture): Don't capture 'this' in
unevaluated context.
From-SVN: r197063
2013-03-25 16:35:43 -04:00
Paolo Carlini
bbce8a8a36
re PR c++/56722 (C++11: syntax error in for loop ends in SEGV)
...
/cp
2013-03-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56722
* decl.c (cp_finish_decl): Check DECL_LANG_SPECIFIC before
DECL_TEMPLATE_INSTANTIATION.
/testsuite
2013-03-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56722
* g++.dg/cpp0x/range-for23.C: New.
From-SVN: r197062
2013-03-25 20:19:10 +00:00
Tilo Schwarz
6f6fafc9ef
re PR fortran/52512 (Cannot match namelist object name)
...
2013-03-25 Tilo Schwarz <tilo@tilo-schwarz.de>
PR libfortran/52512
* io/list_read.c (nml_parse_qualifier): To check for a derived type
don't use the namelist head element type but the current element type.
(nml_get_obj_data): Add current namelist element type to
nml_parse_qualifier call.
2013-03-25 Tilo Schwarz <tilo@tilo-schwarz.de>
PR libfortran/52512
* gfortran.dg/namelist_79.f90: New.
From-SVN: r197061
2013-03-25 20:11:20 +00:00
Jeff Law
39e4565357
tree-ssa-dom.c (record_equivalences_from_incoming_edge): Rework slightly to avoid creating and folding useless trees.
...
* tree-ssa-dom.c (record_equivalences_from_incoming_edge): Rework
slightly to avoid creating and folding useless trees. Simplify
slightly by restricting to INTEGER_CSTs and using int_fits_type_p.
From-SVN: r197060
2013-03-25 13:05:57 -06:00
Ian Lance Taylor
85d8c21edb
alloc.c: #include <sys/types.h>.
...
* alloc.c: #include <sys/types.h>.
* mmap.c: Likewise.
From-SVN: r197057
2013-03-25 18:13:18 +00:00
Uros Bizjak
7482c47076
i386.md (*zero_extendsidi2): Merge with *zero_extendsidi2_rex64.
...
* config/i386/i386.md (*zero_extendsidi2): Merge with
*zero_extendsidi2_rex64. Use x64 and nox64 isa attributes.
* config/i386/predicates.md (x86_64_zext_operand): Rename from
x86_64_zext_general_operand. Use nonimmediate_operand on 32bit
targets. Clarify comment.
From-SVN: r197056
2013-03-25 19:09:36 +01:00
Martin Jambor
4a53743eda
ipa-prop.c (ipa_write_jump_function): Stream simple and aritmetic pass-through jump functions differently.
...
2013-03-25 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (ipa_write_jump_function): Stream simple and aritmetic
pass-through jump functions differently.
(ipa_read_jump_function): Likewise. Also use setter functions to set
up jump functions.
From-SVN: r197055
2013-03-25 17:50:02 +01:00
Martin Jambor
162712de00
ipa-cp.c (ipa_get_indirect_edge_target): Renamed to ipa_get_indirect_edge_target_1...
...
2013-03-25 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (ipa_get_indirect_edge_target): Renamed to
ipa_get_indirect_edge_target_1, added parameter agg_reps and ability to
process it.
(ipa_get_indirect_edge_target): New function.
(devirtualization_time_bonus): New parameter known_aggs, pass it to
ipa_get_indirect_edge_target. Update all callers.
(ipcp_discover_new_direct_edges): New parameter aggvals. Pass it to
ipa_get_indirect_edge_target_1 instead of calling
ipa_get_indirect_edge_target.
(create_specialized_node): Pass aggvlas to
ipcp_discover_new_direct_edges.
testsuite/
* gcc.dg/ipa/ipcp-agg-9.c: New test.
From-SVN: r197054
2013-03-25 17:42:41 +01:00
Tobias Burnus
cadddfdda2
re PR fortran/38536 (ICE with C_LOC in resolve.c due to not properly going through expr->ref)
...
2013-03-25 Tobias Burnus <burnus@net-b.de>
PR fortran/38536
PR fortran/38813
PR fortran/38894
PR fortran/39288
PR fortran/40963
PR fortran/45824
PR fortran/47023
PR fortran/47034
PR fortran/49023
PR fortran/50269
PR fortran/50612
PR fortran/52426
PR fortran/54263
PR fortran/55343
PR fortran/55444
PR fortran/55574
PR fortran/56079
PR fortran/56378
* check.c (gfc_var_strlen): Properly handle 0-sized string.
(gfc_check_c_sizeof): Use is_c_interoperable, add checks.
(is_c_interoperable, gfc_check_c_associated, gfc_check_c_f_pointer,
gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc): New
functions.
* expr.c (check_inquiry): Add c_sizeof, compiler_version and
compiler_options.
(gfc_check_pointer_assign): Refine function result check.
gfortran.h (gfc_isym_id): Add GFC_ISYM_C_ASSOCIATED,
GFC_ISYM_C_F_POINTER, GFC_ISYM_C_F_PROCPOINTER, GFC_ISYM_C_FUNLOC,
GFC_ISYM_C_LOC.
(iso_fortran_env_symbol, iso_c_binding_symbol): Handle
NAMED_SUBROUTINE.
(generate_isocbinding_symbol): Update prototype.
(get_iso_c_sym): Remove.
(gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New prototypes.
* intrinsic.c (gfc_intrinsic_subroutine_by_id): New function.
(gfc_intrinsic_sub_interface): Use it.
(add_functions, add_subroutines): Add missing C-binding intrinsics.
(gfc_intrinsic_func_interface): Add special case for c_loc.
gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New functions.
(gfc_intrinsic_func_interface, gfc_intrinsic_sub_interface): Use them.
* intrinsic.h (gfc_check_c_associated, gfc_check_c_f_pointer,
gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc,
gfc_resolve_c_loc, gfc_resolve_c_funloc): New prototypes.
* iresolve.c (gfc_resolve_c_loc, gfc_resolve_c_funloc): New
functions.
* iso-c-binding.def: Split PROCEDURE into NAMED_SUBROUTINE and
NAMED_FUNCTION.
* iso-fortran-env.def: Add NAMED_SUBROUTINE for completeness.
* module.c (create_intrinsic_function): Support subroutines and
derived-type results.
(use_iso_fortran_env_module): Update calls.
(import_iso_c_binding_module): Ditto; update calls to
generate_isocbinding_symbol.
* resolve.c (find_arglists): Skip for intrinsic symbols.
(gfc_resolve_intrinsic): Find intrinsic subs via id.
(is_scalar_expr_ptr, gfc_iso_c_func_interface,
set_name_and_label, gfc_iso_c_sub_interface): Remove.
(resolve_function, resolve_specific_s0): Remove calls to those.
(resolve_structure_cons): Fix handling.
* symbol.c (gen_special_c_interop_ptr): Update c_ptr/c_funptr
generation.
(gen_cptr_param, gen_fptr_param, gen_shape_param,
build_formal_args, get_iso_c_sym): Remove.
(std_for_isocbinding_symbol): Handle NAMED_SUBROUTINE.
(generate_isocbinding_symbol): Support hidden symbols and
using c_ptr/c_funptr symtrees for nullptr defs.
* target-memory.c (gfc_target_encode_expr): Fix handling
of c_ptr/c_funptr.
* trans-expr.c (conv_isocbinding_procedure): Remove.
(gfc_conv_procedure_call): Remove call to it.
(gfc_trans_subcomponent_assign, gfc_conv_expr): Update handling
of c_ptr/c_funptr.
* trans-intrinsic.c (conv_isocbinding_function,
conv_isocbinding_subroutine): New.
(gfc_conv_intrinsic_function, gfc_conv_intrinsic_subroutine):
Call them.
* trans-io.c (transfer_expr): Fix handling of c_ptr/c_funptr.
* trans-types.c (gfc_typenode_for_spec,
gfc_get_derived_type): Ditto.
(gfc_init_c_interop_kinds): Handle NAMED_SUBROUTINE.
2013-03-25 Tobias Burnus <burnus@net-b.de>
PR fortran/38536
PR fortran/38813
PR fortran/38894
PR fortran/39288
PR fortran/40963
PR fortran/45824
PR fortran/47023
PR fortran/47034
PR fortran/49023
PR fortran/50269
PR fortran/50612
PR fortran/52426
PR fortran/54263
PR fortran/55343
PR fortran/55444
PR fortran/55574
PR fortran/56079
PR fortran/56378
* gfortran.dg/c_assoc_2.f03: Update dg-error wording.
* gfortran.dg/c_f_pointer_shape_test.f90: Ditto.
* gfortran.dg/c_f_pointer_shape_tests_3.f03: Ditto.
* gfortran.dg/c_f_pointer_tests_5.f90: Ditto.
* gfortran.dg/c_funloc_tests_2.f03: Ditto.
* gfortran.dg/c_funloc_tests_5.f03: Ditto.
* gfortran.dg/c_funloc_tests_6.f90: Ditto.
* gfortran.dg/c_loc_tests_10.f03: Add -std=f2008.
* gfortran.dg/c_loc_tests_11.f03: Ditto, update dg-error.
* gfortran.dg/c_loc_tests_16.f90: Ditto.
* gfortran.dg/c_loc_tests_4.f03: Ditto.
* gfortran.dg/c_loc_tests_15.f90: Update dg-error wording.
* gfortran.dg/c_loc_tests_3.f03: Valid since F2003 TC5.
* gfortran.dg/c_loc_tests_8.f03: Ditto.
* gfortran.dg/c_ptr_tests_14.f90: Update scan-tree-dump-times.
* gfortran.dg/c_ptr_tests_15.f90: Ditto.
* gfortran.dg/c_sizeof_1.f90: Fix invalid code.
* gfortran.dg/iso_c_binding_init_expr.f03: Update dg-error wording.
* gfortran.dg/pr32601_1.f03: Ditto.
* gfortran.dg/storage_size_2.f08: Remove dg-error.
* gfortran.dg/blockdata_7.f90: New.
* gfortran.dg/c_assoc_4.f90: New.
* gfortran.dg/c_f_pointer_tests_6.f90: New.
* gfortran.dg/c_f_pointer_tests_7.f90: New.
* gfortran.dg/c_funloc_tests_8.f90: New.
* gfortran.dg/c_loc_test_17.f90: New.
* gfortran.dg/c_loc_test_18.f90: New.
* gfortran.dg/c_loc_test_19.f90: New.
* gfortran.dg/c_loc_test_20.f90: New.
* gfortran.dg/c_sizeof_5.f90: New.
* gfortran.dg/iso_c_binding_rename_3.f90: New.
* gfortran.dg/transfer_resolve_2.f90: New.
* gfortran.dg/transfer_resolve_3.f90: New.
* gfortran.dg/transfer_resolve_4.f90: New.
* gfortran.dg/pr32601.f03: Update dg-error.
* gfortran.dg/c_ptr_tests_13.f03: Update dg-error.
* gfortran.dg/c_ptr_tests_9.f03: Fix test case.
From-SVN: r197053
2013-03-25 16:40:26 +01:00
Kyrylo Tkachov
a5a4c20a5c
arm.md (f_sels, f_seld): New types.
...
gcc/
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (f_sels, f_seld): New types.
(*cmov<mode>): New pattern.
* config/arm/predicates.md (arm_vsel_comparison_operator): New
predicate.
gcc/testsuite/
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/vseleqdf.c: New test.
* gcc.target/arm/vseleqsf.c: Likewise.
* gcc.target/arm/vselgedf.c: Likewise.
* gcc.target/arm/vselgesf.c: Likewise.
* gcc.target/arm/vselgtdf.c: Likewise.
* gcc.target/arm/vselgtsf.c: Likewise.
* gcc.target/arm/vselledf.c: Likewise.
* gcc.target/arm/vsellesf.c: Likewise.
* gcc.target/arm/vselltdf.c: Likewise.
* gcc.target/arm/vselltsf.c: Likewise.
* gcc.target/arm/vselnedf.c: Likewise.
* gcc.target/arm/vselnesf.c: Likewise.
* gcc.target/arm/vselvcdf.c: Likewise.
* gcc.target/arm/vselvcsf.c: Likewise.
* gcc.target/arm/vselvsdf.c: Likewise.
* gcc.target/arm/vselvssf.c: Likewise.
From-SVN: r197052
2013-03-25 15:20:44 +00:00
Kyrylo Tkachov
a5784ce624
Fix ChangeLog formatting.
...
gcc/
Fix ChangeLog formatting.
gcc/testsuite
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov at arm.com>
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Move test
body from here...
* gcc.target/aarch64/atomic-comp-swap-release-acquire.x: ... to here.
* gcc.target/aarch64/atomic-op-acq_rel.c: Move test body from here...
* gcc.target/aarch64/atomic-op-acq_rel.x: ... to here.
* gcc.target/aarch64/atomic-op-acquire.c: Move test body from here...
* gcc.target/aarch64/atomic-op-acquire.x: ... to here.
* gcc.target/aarch64/atomic-op-char.c: Move test body from here...
* gcc.target/aarch64/atomic-op-char.x: ... to here.
* gcc.target/aarch64/atomic-op-consume.c: Move test body from here...
* gcc.target/aarch64/atomic-op-consume.x: ... to here.
* gcc.target/aarch64/atomic-op-int.c: Move test body from here...
* gcc.target/aarch64/atomic-op-int.x: ... to here.
* gcc.target/aarch64/atomic-op-relaxed.c: Move test body from here...
* gcc.target/aarch64/atomic-op-relaxed.x: ... to here.
* gcc.target/aarch64/atomic-op-release.c: Move test body from here...
* gcc.target/aarch64/atomic-op-release.x: ... to here.
* gcc.target/aarch64/atomic-op-seq_cst.c: Move test body from here...
* gcc.target/aarch64/atomic-op-seq_cst.x: ... to here.
* gcc.target/aarch64/atomic-op-short.c: Move test body from here...
* gcc.target/aarch64/atomic-op-short.x: ... to here.
* gcc.target/arm/atomic-comp-swap-release-acquire.c: New test.
* gcc.target/arm/atomic-op-acq_rel.c: Likewise.
* gcc.target/arm/atomic-op-acquire.c: Likewise.
* gcc.target/arm/atomic-op-char.c: Likewise.
* gcc.target/arm/atomic-op-consume.c: Likewise.
* gcc.target/arm/atomic-op-int.c: Likewise.
* gcc.target/arm/atomic-op-relaxed.c: Likewise.
* gcc.target/arm/atomic-op-release.c: Likewise.
* gcc.target/arm/atomic-op-seq_cst.c: Likewise.
* gcc.target/arm/atomic-op-short.c: Likewise.
From-SVN: r197051
2013-03-25 14:55:05 +00:00
Kai Tietz
55446c7e55
* config/i386/cygwin.S: Replace use of _WIN64 by __x86_64__.
...
From-SVN: r197050
2013-03-25 15:54:30 +01:00
Kai Tietz
f992b9fcea
xm-mingw32.h (__USE_MINGW_ANSI_STDIO): Enable POSIX-printf for mingw-hosted builds.
...
* config/i386/xm-mingw32.h (__USE_MINGW_ANSI_STDIO): Enable
POSIX-printf for mingw-hosted builds.
From-SVN: r197049
2013-03-25 15:52:48 +01:00
Richard Biener
c16fd67643
re PR c++/56694 (Internal compiler error when compiling OpenMP code)
...
2013-03-25 Richard Biener <rguenther@suse.de>
PR middle-end/56694
* tree-eh.c (lower_eh_must_not_throw): Strip BLOCKs from the
must-not-throw stmt location.
* g++.dg/torture/pr56694.C: New testcase.
From-SVN: r197047
2013-03-25 14:46:08 +00:00
Kyrylo Tkachov
5ad29f129e
arm.c (arm_emit_load_exclusive): Add acq parameter.
...
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (arm_emit_load_exclusive): Add acq parameter.
Emit load-acquire versions when acq is true.
(arm_emit_store_exclusive): Add rel parameter.
Emit store-release versions when rel is true.
(arm_split_compare_and_swap): Use acquire-release instructions
instead.
of barriers when appropriate.
(arm_split_atomic_op): Likewise.
* config/arm/arm.h (TARGET_HAVE_LDACQ): New macro.
* config/arm/unspecs.md (VUNSPEC_LAX): New unspec.
(VUNSPEC_SLX): Likewise.
(VUNSPEC_LDA): Likewise.
(VUNSPEC_STL): Likewise.
* config/arm/sync.md (atomic_load<mode>): New pattern.
(atomic_store<mode>): Likewise.
(arm_load_acquire_exclusive<mode>): Likewise.
(arm_load_acquire_exclusivesi): Likewise.
(arm_load_acquire_exclusivedi): Likewise.
(arm_store_release_exclusive<mode>): Likewise.
From-SVN: r197046
2013-03-25 14:41:37 +00:00
Catherine Moore
03a7dddbdb
constraints.md (u, [...]): New constraints.
...
2013-03-25 Catherine Moore <clm@codesourcery.com>
* config/mips/constraints.md (u, Udb7 Uead, Uean, Uesp, Uib3,
Uuw6, Usb4, ZS, ZT, ZU, ZV, ZW): New constraints.
* config/mip/predicates.md (lwsp_swsp_operand,
lw16_sw16_operand, lhu16_sh16_operand, lbu16_operand,
sb16_operand, db4_operand, db7_operand, ib3_operand,
sb4_operand, ub4_operand, uh4_operand, uw4_operand,
uw5_operand, uw6_operand, addiur2_operand, addiusp_operand,
andi16_operand): New predicates.
* config/mips/mips.md (compression): New attribute.
(enabled): New attribute.
(length): Consider compression in computing length.
(shift_compression): New code attribute.
(*add<mode>3): New operands. Record compression.
(sub<mode>3): Likewise.
(one_cmpl<mode>2): Likewise.
(*and<mode>3): Likewise.
(*ior<mode>3): Likewise.
(unnamed pattern for xor): Likewise.
(*zero_extend<SHORT:mode><GPR:mode>2): Likewise.
(*<optab><mode>3): Likewise.
(*mov<mode>_internal: Likewise.
* config/mips/mips-protos.h (mips_signed_immediate_p): New.
(mips_unsigned_immediate_p): New.
(umips_lwsp_swsp_address_p): New.
(m16_based_address_p): New.
* config/mips/mips-protos.h (mips_signed_immediate_p): New prototype.
(mips_unsigned_immediate_p): New prototype.
(lwsp_swsp_address_p): New prototype.
(m16_based_address_p): New prototype.
* config/mips/mips.c (mips_unsigned_immediate_p): New function.
(mips_signed_immediate_p): New function.
(m16_based_address_p): New function.
(lwsp_swsp_address_p): New function.
(mips_print_operand_punctuation): Recognize short delay slot insns
for microMIPS.add<mode>3"
From-SVN: r197042
2013-03-25 09:53:53 -04:00
Kyrylo Tkachov
cf70554ed8
Add testcases for previous commit.
...
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/56720
* gcc.target/arm/neon-vcond-gt.c: New test.
* gcc.target/arm/neon-vcond-ltgt.c: Likewise.
* gcc.target/arm/neon-vcond-unordered.c: Likewise.
From-SVN: r197041
2013-03-25 13:50:45 +00:00
Kyrylo Tkachov
f35c297f8d
re PR target/56720 (ICE when expanding vcond with floating point unordered comparisons)
...
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/56720
* config/arm/iterators.md (v_cmp_result): New mode attribute.
* config/arm/neon.md (vcond<mode><mode>): Handle unordered cases.
2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR target/56720
* gcc.target/arm/neon-vcond-gt.c: New test.
* gcc.target/arm/neon-vcond-ltgt.c: Likewise.
* gcc.target/arm/neon-vcond-unordered.c: Likewise.
From-SVN: r197040
2013-03-25 13:48:06 +00:00
Richard Biener
051b944668
re PR bootstrap/56689 (internal compiler error: in get_loop_body, at cfgloop.c:841)
...
2013-03-25 Richard Biener <rguenther@suse.de>
PR tree-optimization/56689
* tree-vrp.c (execute_vrp): Mark loops for fixup if we removed
any edge.
* gcc.dg/torture/pr56689.c: New testcase.
From-SVN: r197039
2013-03-25 12:54:56 +00:00
Richard Biener
374001cbee
tree-ssa-loop-im.c (struct mem_ref): Use bitmap_head instead of bitmap.
...
2013-03-25 Richard Biener <rguenther@suse.de>
* tree-ssa-loop-im.c (struct mem_ref): Use bitmap_head instead
of bitmap.
(memory_references): Likewise.
(outermost_indep_loop, mem_ref_alloc, mark_ref_stored,
gather_mem_refs_stmt, record_dep_loop, ref_indep_loop_p_1,
ref_indep_loop_p_2, find_refs_for_sm): Adjust.
(gather_mem_refs_in_loops): Fold into ...
(analyze_memory_references): ... this. Move initialization
to tree_ssa_lim_initialize.
(fill_always_executed_in): Rename to ...
(fill_always_executed_in_1): ... this.
(fill_always_executed_in): Move contains_call computation to
this new function from ...
(tree_ssa_lim_initialize): ... here.
(tree_ssa_lim): Call fill_always_executed_in.
From-SVN: r197038
2013-03-25 12:53:57 +00:00
Eric Botcazou
5789594736
* postreload.c (reload_combine): Fix code detecting returns.
...
From-SVN: r197037
2013-03-25 11:25:28 +00:00
Eric Botcazou
1e1b18c1c7
function.c (emit_use_return_register_into_block): On cc0 targets, do not emit the sequence between cc0 setter and user.
...
* function.c (emit_use_return_register_into_block): On cc0 targets,
do not emit the sequence between cc0 setter and user.
From-SVN: r197036
2013-03-25 11:24:12 +00:00
Kai Tietz
9a776a830e
* g++.dg/torture/20121105-1.C: Adjust for LLP64 targets.
...
From-SVN: r197034
2013-03-25 11:55:37 +01:00
Kai Tietz
9216baf178
predicates.md (local_symbolic_operand): Interpret dll-imported symbols as none-local.
...
* config/i386/predicates.md (local_symbolic_operand): Interpret
dll-imported symbols as none-local.
From-SVN: r197033
2013-03-25 11:51:11 +01:00
Kai Tietz
c0f6f2b4f2
50594.cc: For mingw-targets use only static libstdc++-version.
...
* testsuite/18_support/50594.cc: For mingw-targets use only static
libstdc++-version.
* testsuite/19_diagnostics/error_category/operators/equal.cc
* testsuite/19_diagnostics/error_code/cons/1.cc
* testsuite/19_diagnostics/error_code/operators/bool.cc
* testsuite/19_diagnostics/error_code/operators/equal.cc
* testsuite/19_diagnostics/error_code/operators/not_equal.cc
* testsuite/19_diagnostics/error_condition/cons/1.cc
* testsuite/19_diagnostics/error_condition/operators/bool.cc
* testsuite/19_diagnostics/error_condition/operators/equal.cc
* testsuite/19_diagnostics/error_condition/operators/not_equal.cc
* testsuite/23_containers/set/requirements/exception/basic.cc
* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
* testsuite/lib/dg-options.exp (dg-additional-options): New option.
From-SVN: r197032
2013-03-25 11:47:39 +01:00
Richard Biener
76421b449b
tree-ssa-loop-im.c (struct depend): Remove.
...
2013-03-25 Richard Biener <rguenther@suse.de>
* tree-ssa-loop-im.c (struct depend): Remove.
(struct lim_aux_data): Make depends a vec of gimples.
(free_lim_aux_data): Adjust.
(add_dependency): Likewise.
(set_level): Likewise.
From-SVN: r197031
2013-03-25 09:44:25 +00:00
Richard Biener
d154bfa22d
re PR rtl-optimization/56434 (document that __attribute__((__malloc__)) assumes returned pointer has BIGGEST_ALIGNMENT)
...
2013-03-25 Richard Biener <rguenther@suse.de>
PR middle-end/56434
* calls.c (expand_call): Use MALLOC_ABI_ALIGNMENT to annotate
the pointer returned by calls with ECF_MALLOC set.
From-SVN: r197030
2013-03-25 09:39:52 +00:00
GCC Administrator
c42ee993cf
Daily bump.
...
From-SVN: r197029
2013-03-25 00:16:33 +00:00
Tilo Schwarz
6790f448bb
MAINTAINERS (Write After Approval): Add myself.
...
2013-02-24 Tilo Schwarz <tilo@tilo-schwarz.de>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r197025
2013-03-24 23:37:39 +00:00
Uros Bizjak
acef5fe00e
mmx.md (mov<mode>): Add ?!Ym,r and r,?!Ym alternatives.
...
* config/i386/mmx.md (mov<mode>): Add ?!Ym,r and r,?!Ym alternatives.
From-SVN: r197024
2013-03-24 23:22:21 +01:00
Jonathan Wakely
95a83503a0
re PR libstdc++/56170 (Extension debug_allocator seems non-compliant w.r.t. rebind)
...
PR libstdc++/56170
* include/ext/debug_allocator.h (debug_allocator): Add missing members
to meet allocator requirements.
* testsuite/ext/debug_allocator/56170.cc: New.
From-SVN: r197023
2013-03-24 22:10:29 +00:00
Uros Bizjak
2cd9804e80
sse.md (mov<mode>): Merge with movv2sf expander using MMXMODE mode iterator.
...
* config/i386/sse.md (mov<mode>): Merge with movv2sf expander
using MMXMODE mode iterator.
(*move<mode>_internal): Merge with *movv2sf_internal and
*movv2sf_internal_rex64 using MMXMODE mode iterator.
From-SVN: r197021
2013-03-24 19:26:48 +01:00
Tobias Burnus
a73421c460
re PR libfortran/56696 (Formatted (list-directed) input fails to signal end of record)
...
2013-03-24 Tobias Burnus <burnus@net-b.de>
PR fortran/56696
* io/list_read.c (read_real): Fix EOF diagnostic.
2013-03-24 Tobias Burnus <burnus@net-b.de>
PR fortran/56696
* gfortran.dg/eof_5.f90: New.
From-SVN: r197019
2013-03-24 11:16:33 +01:00
Andi Kleen
b01819be5d
Avoid nonconst memmodels in libitm's local outdated copy of <atomic> too
...
This avoids warnings in libitm for non constant memory models,
fixing the bootstrap with -Werror
Passed bootstrap and test on x86_64-linux.
libitm/:
2013-03-23 Andi Kleen <andi@my.domain.org>
* local_atomic (__always_inline): Add.
(__calculate_memory_order, atomic_thread_fence,
atomic_signal_fence, test_and_set, clear, store, load,
exchange, compare_exchange_weak, compare_exchange_strong,
fetch_add, fetch_sub, fetch_and, fetch_or, fetch_xor):
Add __always_inline to force inlining.
From-SVN: r197018
2013-03-24 00:23:20 +00:00
Andi Kleen
94f3ccc8d9
Avoid non constant memory model uses in libatomic
...
x86 ends up using non constant memory models for some of the libatomic
functions. These all end up as __ATOMIC_SEQ_CST. Just use this
directly. This avoids a new warning for non constant memory
models, which broke the bootstrap with -Werror
Passed bootstrap and test on x86_64-linux.
libatomic/:
2013-03-23 Andi Kleen <ak@linux.intel.com>
* gcas.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gexch.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gload.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gstore.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
diff --git a/libatomic/gcas.c b/libatomic/gcas.c
index edbf611..e3d77f3 100644
--- a/libatomic/gcas.c
+++ b/libatomic/gcas.c
@@ -32,7 +32,7 @@
# define EXACT_INLINE(N) \
if (C2(HAVE_ATOMIC_CAS_,N)) \
return __atomic_compare_exchange_n \
- (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, smodel, fmodel)
+ (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
#else
# define EXACT_INLINE(N)
#endif
diff --git a/libatomic/gexch.c b/libatomic/gexch.c
index 1999067..c8c8658 100644
--- a/libatomic/gexch.c
+++ b/libatomic/gexch.c
@@ -33,7 +33,7 @@
if (C2(HAVE_ATOMIC_EXCHANGE_,N)) \
{ \
*PTR(N,rptr) = __atomic_exchange_n \
- (PTR(N,mptr), *PTR(N,vptr), smodel); \
+ (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
return; \
}
#else
diff --git a/libatomic/gload.c b/libatomic/gload.c
index df318d5..85865bd 100644
--- a/libatomic/gload.c
+++ b/libatomic/gload.c
@@ -32,7 +32,7 @@
# define EXACT_INLINE(N, DEST, SRC, DONE) \
if (C2(HAVE_ATOMIC_LDST_,N)) \
{ \
- DEST = __atomic_load_n (SRC, smodel); \
+ DEST = __atomic_load_n (SRC, __ATOMIC_SEQ_CST); \
DONE; \
}
#else
diff --git a/libatomic/gstore.c b/libatomic/gstore.c
index d571e58..84f9a8d 100644
--- a/libatomic/gstore.c
+++ b/libatomic/gstore.c
@@ -32,7 +32,7 @@
# define EXACT_INLINE(N) \
if (C2(HAVE_ATOMIC_LDST_,N)) \
{ \
- __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), smodel); \
+ __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
return; \
}
#else
From-SVN: r197017
2013-03-24 00:23:10 +00:00