Gerald Pfeifer
0e29a40052
* gfortran.texi (Fortran 2003 status): Fix grammar.
...
From-SVN: r212315
2014-07-06 22:17:21 +00:00
Uros Bizjak
88e03ffe44
* ChangeLog: Fix whitespace.
...
From-SVN: r212314
2014-07-06 22:32:26 +02:00
Marek Polacek
e5fe19a38a
imm-devirt-1.C: Fix regexp in dg-final.
...
* g++.dg/ipa/imm-devirt-1.C: Fix regexp in dg-final.
* g++.dg/ipa/imm-devirt-2.C: Likewise.
From-SVN: r212313
2014-07-06 19:26:06 +00:00
Marek Polacek
773ec47fe6
re PR c/6940 (taking sizeof array parameter should trigger a warning)
...
PR c/6940
* doc/invoke.texi: Document -Wsizeof-array-argument.
c-family/
* c.opt (Wsizeof-array-argument): New option.
c/
* c-decl.c (grokdeclarator): Set C_ARRAY_PARAMETER.
* c-tree.h (C_ARRAY_PARAMETER): Define.
* c-typeck.c (c_expr_sizeof_expr): Warn when using sizeof on an array
function parameter.
cp/
* cp-tree.h (DECL_ARRAY_PARAMETER_P): Define.
* decl.c (grokdeclarator): Set DECL_ARRAY_PARAMETER_P.
* typeck.c (cxx_sizeof_expr): Warn when using sizeof on an array
function parameter.
testsuite/
* c-c++-common/Wsizeof-pointer-memaccess1.c: Use
-Wno-sizeof-array-argument.
* c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise.
* g++.dg/warn/Wsizeof-pointer-memaccess-1.C: Likewise.
* gcc.dg/Wsizeof-pointer-memaccess1.c: Likewise.
* g++.dg/torture/Wsizeof-pointer-memaccess1.C: Likewise.
* g++.dg/torture/Wsizeof-pointer-memaccess2.C: Likewise.
* gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise.
* c-c++-common/sizeof-array-argument.c: New test.
* gcc.dg/vla-5.c: Add dg-warnings.
../libgomp/ * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
From-SVN: r212312
2014-07-06 19:00:10 +00:00
GCC Administrator
dc044bfb72
Daily bump.
...
From-SVN: r212311
2014-07-06 00:16:57 +00:00
Rainer Orth
de51fc1b15
Restore Solaris/SPARC bootstrap
...
* configure, config.h.in: Regenerate.
* config/fpu-sysv.h: Include <assert.h>.
From-SVN: r212307
2014-07-05 20:43:07 +00:00
Rainer Orth
9a62ed16dd
Don't accept isl 0.10.
...
* configure.ac: Don't accept isl 0.10.
* configure: Regenerate.
From-SVN: r212306
2014-07-05 20:18:14 +00:00
Gerald Pfeifer
a4ff2ef3c0
wide-int.h (wide_int_storage): Change declaration from struct to class.
...
* wide-int.h (wide_int_storage): Change declaration from struct
to class.
From-SVN: r212305
2014-07-05 18:41:08 +00:00
Jan Hubicka
058d0a9059
cgraph.c (cgraph_create_indirect_edge): Update call of get_polymorphic_call_info.
...
* cgraph.c (cgraph_create_indirect_edge): Update call of
get_polymorphic_call_info.
* ipa-utils.h (get_polymorphic_call_info): Add parameter CALL.
(possible_polymorphic_call_targets): Add parameter call.
(decl_maybe_in_construction_p): New predicate.
(get_polymorphic_call_info): Add parameter call;
use decl_maybe_in_construction_p.
* gimple-fold.c (fold_gimple_assign): Update use of
possible_polymorphic_call_targets.
(gimple_fold_call): Likewise.
* ipa-prop.c: Inlcude calls.h
(ipa_binfo_from_known_type_jfunc): Check that known type is record.
(param_type_may_change_p): New predicate.
(detect_type_change_from_memory_writes): Break out from ...
(detect_type_change): ... this one; use
param_type_may_change_p.
(detect_type_change_ssa): Use param_type_may_change_p.
(compute_known_type_jump_func): Use decl_maybe_in_construction_p.
* g++.dg/ipa/devirt-26.C: Update testcase.
* g++.dg/ipa/imm-devirt-1.C: Update testcase.
* g++.dg/ipa/imm-devirt-2.C: Update testcase.
From-SVN: r212304
2014-07-05 17:22:44 +00:00
Charles Baylis
aed773a2c8
[ARM] PR target/49423
...
2014-07-05 Charles Baylis <charles.baylis@linaro.org>
PR target/49423
* config/arm/arm-protos.h (arm_legitimate_address_p,
arm_is_constant_pool_ref): Add prototypes.
* config/arm/arm.c (arm_legitimate_address_p): Remove static.
(arm_is_constant_pool_ref) New function.
* config/arm/arm.md (unaligned_loadhis, arm_zero_extendhisi2_v6,
arm_zero_extendqisi2_v6): Use Uh constraint for memory operand.
(arm_extendhisi2, arm_extendhisi2_v6): Use Uh constraint for memory
operand. Remove pool_range and neg_pool_range attributes.
(arm_extendqihi_insn, arm_extendqisi, arm_extendqisi_v6): Remove
pool_range and neg_pool_range attributes.
* config/arm/constraints.md (Uh): New constraint.
(Uq): Don't allow constant pool references.
From-SVN: r212303
2014-07-05 11:58:06 +00:00
GCC Administrator
f19c9da841
Daily bump.
...
From-SVN: r212302
2014-07-05 00:16:41 +00:00
Tobias Burnus
d7463e5b31
resolve.c (resolve_assoc_var): Fix corank setting.
...
2014-07-04 Tobias Burnus <burnus@net-b.de>
* resolve.c (resolve_assoc_var): Fix corank setting.
* trans-array.c (gfc_conv_descriptor_token): Change assert.
for select-type temporaries.
* trans-decl.c (generate_coarray_sym_init): Skip for
attr.select_type_temporary.
* trans-expr.c (gfc_conv_procedure_call): Fix for
select-type temporaries.
* trans-intrinsic.c (get_caf_token_offset): Ditto.
(gfc_conv_intrinsic_caf_get, gfc_conv_intrinsic_caf_send): Set
the correct dtype.
* trans-types.h (gfc_get_dtype_rank_type): New.
* trans-types.c (gfc_get_dtype_rank_type): Ditto.
2014-07-04 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray/coindexed_3.f90: New.
From-SVN: r212299
2014-07-04 22:25:28 +02:00
James Greenhalgh
5a908485ae
[Patch AArch64_be] Fix some vec_concat big-endian confusions
...
* config/aarch64/aarch64-simd.md (move_lo_quad_internal_<mode>): New.
(move_lo_quad_internal_be_<mode>): Likewise.
(move_lo_quad_<mode>): Convert to define_expand.
(aarch64_simd_move_hi_quad_<mode>): Gate on BYTES_BIG_ENDIAN.
(aarch64_simd_move_hi_quad_be_<mode>): New.
(move_hi_quad_<mode>): Use appropriate insn for BYTES_BIG_ENDIAN.
(aarch64_combinez<mode>): Gate on BYTES_BIG_ENDIAN.
(aarch64_combinez_be<mode>): New.
(aarch64_combine<mode>): Convert to define_expand.
(aarch64_combine_internal<mode>): New.
(aarch64_simd_combine<mode>): Remove bogus RTL description.
From-SVN: r212298
2014-07-04 15:56:27 +00:00
Tom de Vries
34386e79b3
Improve documentation of earlyclobber
...
2014-07-04 Tom de Vries <tom@codesourcery.com>
* doc/md.texi (@subsection Constraint Modifier Characters): Clarify
combination of earlyclobber and read/write modifiers.
From-SVN: r212297
2014-07-04 13:36:25 +00:00
Tom de Vries
7973ca623a
Fix constraint in vec_unpack_trunc_<mode>
...
2014-07-04 Tom de Vries <tom@codesourcery.com>
* config/aarch64/aarch64-simd.md
(define_insn "vec_unpack_trunc_<mode>"): Fix constraint.
From-SVN: r212296
2014-07-04 13:36:12 +00:00
Richard Earnshaw
9815fafaf6
re PR target/61714 (configure --with-arch and --with-cpu are ignored on aarch64)
...
PR target/61714
* aarch64.h (OPTION_DEFAULT_SPECS): Define.
From-SVN: r212295
2014-07-04 10:51:56 +00:00
Jakub Jelinek
253eab4f8b
re PR middle-end/61654 (ICE in release_function_body, at cgraph.c:1699)
...
PR middle-end/61654
* cgraphunit.c (expand_thunk): Call free_dominance_info.
* g++.dg/opt/pr61654.C: New test.
From-SVN: r212293
2014-07-04 10:38:45 +02:00
Jakub Jelinek
14e000dec0
re PR tree-optimization/61684 (ICE at -Os and above on x86_64-linux-gnu in tree check: expected ssa_name, have addr_expr in recognize_single_bit_test, at tree-ssa-ifcombine.c:238)
...
PR tree-optimization/61684
* tree-ssa-ifcombine.c (recognize_single_bit_test): Make sure
rhs1 of conversion is a SSA_NAME before using SSA_NAME_DEF_STMT on it.
* gcc.c-torture/compile/pr61684.c: New test.
From-SVN: r212290
2014-07-04 10:32:56 +02:00
Chung-Ju Wu
17bf6d250c
Move fp-as-gp optimization to nds32-fp-as-gp.c module.
...
gcc/
* config/nds32/nds32.c (nds32_have_prologue_p): Move to ...
(nds32_symbol_load_store_p): Move to ...
(nds32_fp_as_gp_check_available): Move to ...
* config/nds32/nds32-fp-as-gp.c: ... here.
* config/nds32/nds32-protos.h (nds32_symbol_load_store_p): Remove
extern declaration.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212288
2014-07-04 07:39:23 +00:00
Chung-Ju Wu
f1fac1bced
Move memory related implementation to nds32-memory-manipulation.c module.
...
gcc/
* config/nds32/nds32.c (nds32_expand_load_multiple): Move to ...
(nds32_expand_store_multiple): Move to ...
(nds32_expand_movmemqi): Move to ...
* config/nds32/nds32-memory-manipulation.c: ... here.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212287
2014-07-04 07:38:06 +00:00
Chung-Ju Wu
9e9dbc429c
Move some external functions used by machine description patterns to nds32-md-auxiliary.c module.
...
gcc/
* config/nds32/nds32.c (nds32_byte_to_size): Move to ...
(nds32_output_casesi_pc_relative): Move to ...
(nds32_output_casesi): Move to ...
(nds32_mem_format): Move to ...
(nds32_output_16bit_store): Move to ...
(nds32_output_16bit_load): Move to ...
(nds32_output_32bit_store): Move to ...
(nds32_output_32bit_load): Move to ...
(nds32_output_32bit_load_s): Move to ...
(nds32_output_stack_push): Move to ...
(nds32_output_stack_pop): Move to ...
* config/nds32/nds32-md-auxiliary.c: ... here.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212286
2014-07-04 07:35:43 +00:00
Chung-Ju Wu
c65cef1051
Preparation of nds32-pipelines-auxiliary.c module for future implementation.
...
gcc/
* config/nds32/nds32-pipelines-auxiliary.c: Add comment to describe
the purpose of this file.
Co-Authored-By: Ling-Hua Tseng <uranus@tinlans.org>
From-SVN: r212285
2014-07-04 07:32:28 +00:00
Chung-Ju Wu
89a4b5475a
Move cost calculation to nds32-cost.c module.
...
gcc/
* config/nds32/nds32.c (nds32_rtx_costs): Move implementation to ...
(nds32_address_cost): Move implementation to ...
* config/nds32/nds32-cost.c: ... here.
* config/nds32/nds32-protos.h (nds32_rtx_costs_impl): Declare.
(nds32_address_cost_impl): Declare.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212284
2014-07-04 07:31:24 +00:00
Chung-Ju Wu
6a2a98b1a6
Move some helper functions of predicates and constraints to nds32-predicates.c module.
...
gcc/
* config/nds32/nds32.c
(nds32_consecutive_registers_load_store_p): Move to ...
(nds32_valid_multiple_load_store): Move to ...
(nds32_valid_stack_push_pop): Move to ...
(nds32_can_use_bclr_p): Move to ...
(nds32_can_use_bset_p): Move to ...
(nds32_can_use_btgl_p): Move to ...
(nds32_can_use_bitci_p): Move to ...
* config/nds32/nds32-predicates.c: ... here.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212283
2014-07-04 07:30:04 +00:00
Chung-Ju Wu
aaa44d2d0b
Move builtin functions implementation to nds32-intrinsic.c module.
...
gcc/
* config/nds32/nds32.c
(nds32_expand_builtin_null_ftype_reg): Move to ...
(nds32_expand_builtin_reg_ftype_imm): Move to ...
(nds32_expand_builtin_null_ftype_reg_imm): Move to ...
(nds32_init_builtins): Move implementation to ...
(nds32_expand_builtin): Move implementation to ...
* config/nds32/nds32-intrinsic.c: ... here.
* config/nds32/nds32-protos.h (nds32_init_builtins_impl): Declare.
(nds32_expand_builtin_impl): Declare.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212282
2014-07-04 07:26:10 +00:00
Chung-Ju Wu
c23a919b86
Move ISR impelentation to nds32-isr.c module.
...
gcc/
* config/nds32/nds32.c (nds32_emit_section_head_template): Move to ...
(nds32_emit_section_tail_template): Move to ...
(nds32_emit_isr_jmptbl_section): Move to ...
(nds32_emit_isr_vector_section): Move to ...
(nds32_emit_isr_reset_conten): Move to ...
(nds32_check_isr_attrs_conflict): Move to ...
(nds32_construct_isr_vectors_information): Move to ...
(nds32_asm_file_start): Move implementation to ...
(nds32_asm_file_end): Move implementation to ...
* config/nds32/nds32-isr.c: ... here.
* config/nds32/nds32-protos.h
(nds32_check_isr_attrs_conflict): Declare.
(nds32_construct_isr_vectors_information): Declare.
(nds32_asm_file_start_for_isr): Declare.
(nds32_asm_file_end_for_isr): Declare.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212281
2014-07-04 07:23:32 +00:00
Chung-Ju Wu
c0c935b507
Add several new files for preparation of providing modules
...
that are going to be separated from nds32.c source.
gcc/
* config.gcc (nds32*): Add new modules to extra_objs.
(nds32le-*-*): Use t-nds32 makefile fragment for new modules.
(nds32be-*-*): Likewise.
* config/nds32/nds32-cost.c: New file.
* config/nds32/nds32-fp-as-gp.c: New file.
* config/nds32/nds32-intrinsic.c: New file.
* config/nds32/nds32-isr.c: New file.
* config/nds32/nds32-md-auxiliary.c: New file.
* config/nds32/nds32-memory-manipulation.c: New file.
* config/nds32/nds32-pipelines-auxiliary.c: New file.
* config/nds32/nds32-predicates.c: New file.
* config/nds32/t-nds32: New file.
Co-Authored-By: Kito Cheng <kito@0xlab.org>
Co-Authored-By: Monk Chiang <sh.chiang04@gmail.com>
From-SVN: r212280
2014-07-04 07:18:19 +00:00
Thomas Schwinge
a03bd0056c
Normalize interface for all *-dg-runtest.
...
gcc/testsuite/
* lib/g++-dg.exp (g++-dg-runtest): Change interface to match
dg-runtest's. Adapt all callers.
* lib/gcc-dg.exp (gcc-dg-runtest): Likewise.
* lib/gfortran-dg.exp (gfortran-dg-runtest): Likewise.
* lib/go-dg.exp (go-dg-runtest): Likewise.
* lib/obj-c++-dg.exp (obj-c++-dg-runtest): Likewise.
* lib/objc-dg.exp (objc-dg-runtest): Likewise.
libffi/
* testsuite/lib/libffi.exp (libffi-dg-runtest): Change interface
match to dg-runtest's.
From-SVN: r212278
2014-07-04 07:28:17 +02:00
GCC Administrator
01ffe74dcc
Daily bump.
...
From-SVN: r212277
2014-07-04 00:16:52 +00:00
Jakub Jelinek
c01d6ad948
re PR tree-optimization/61682 (wrong code at -O3 on x86_64-linux-gnu)
...
PR tree-optimization/61682
* wide-int.cc (wi::mul_internal): Handle high correctly
for umul_ppmm using cases and when one of the operands is
equal to 1.
* gcc.c-torture/execute/pr61682.c: New test.
From-SVN: r212273
2014-07-04 00:11:21 +02:00
Jakub Jelinek
f707da16f7
libgomp.exp (libgomp_target_compile): If $source matches regex $lang_source_re, add $lang_include_flags to options.
...
* testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
matches regex $lang_source_re, add $lang_include_flags to options.
* testsuite/libgomp.c/c.exp: Unset lang_include_flags.
* testsuite/libgomp.c++/c++.exp: Likewise.
* testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
and lang_include_flags instead of adding -fintrinsic-modules-path= to
ALWAYS_CFLAGS.
* testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
From-SVN: r212268
2014-07-03 20:45:35 +02:00
Segher Boessenkool
9e5f78f114
Fix the shift patterns, and add test
...
Firstly, it adds back the split conditions that I accidentally removed.
Without it the dot insns are never generated, or rather, always split
back to a separate compare instruction.
Secondly, the shift amount should be SI always, not GPR, or GCC will
insert a zero-extend at expand time that it cannot get rid of later.
The test tests whether dot-form instructions are generated for both
"dot" and "dot2" cases, that is, with just a CC output or also a GPR
output; for all four basic shifts, with a register amount or an
immediate amount. It also tests for superfluous zero-extends. This
also tests if combine "simplifies" the rotates to right-rotates, which
it shouldn't do anymore.
From-SVN: r212267
2014-07-03 18:39:58 +02:00
Thomas Schwinge
07b6c04483
Explain gfortran-dg-runtest usage in libgomp Fortran testing.
...
libgomp/
* testsuite/libgomp.fortran/fortran.exp: Explain
gfortran-dg-runtest usage.
From-SVN: r212266
2014-07-03 17:23:43 +02:00
Richard Earnshaw
a89b02c0aa
arm.md (arch): Add armv6_or_vfpv3.
...
* arm.md (arch): Add armv6_or_vfpv3.
(arch_enabled): Add test for the above.
* vfp.md (divsf_vfp, divdf_vfp): Add earlyclobber when code can run
on VFP9.
(sqrtsf_vfp, sqrtdf_vfp): Likewise.
From-SVN: r212265
2014-07-03 15:12:23 +00:00
Jakub Jelinek
00a7ba5840
gcov-io.c (gcov_read_words): Don't call memmove if excess is 0.
...
* gcov-io.c (gcov_read_words): Don't call memmove if excess is 0.
* data-streamer-in.c (streamer_read_hwi): Shift UHWI 1 instead of
HWI 1 and negate the unsigned value.
* expmed.c (expand_sdiv_pow2): For modes wider than word always
use AND instead of shift.
* wide-int-print.cc (print_decs): Negate UHWI instead of HWI.
c-family/
* c-ada-spec.c (dump_ada_nodes): Don't call qsort if
comments->count <= 1, as comments->entries might be NULL.
From-SVN: r212264
2014-07-03 16:39:05 +02:00
Francois-Xavier Coudert
e215267395
ieee_1.F90: Mark variables as volatile to avoid optimization.
...
* gfortran.dg/ieee/ieee_1.F90: Mark variables as volatile to
avoid optimization.
From-SVN: r212261
2014-07-03 11:47:46 +00:00
Marek Polacek
e71d7987b1
invoke.texi (-fsanitize=bounds): Tweak wording.
...
* doc/invoke.texi (-fsanitize=bounds): Tweak wording.
(-fsanitize=float-divide-by-zero): Move to the table with
-fsanitize=undefined suboptions.
(-fsanitize=float-cast-overflow): Likewise.
From-SVN: r212260
2014-07-03 10:44:20 +00:00
Maciej W. Rozycki
283bbe35a1
rs6000.c (rs6000_adjust_atomic_subword): Use BYTES_BIG_ENDIAN rather than WORDS_BIG_ENDIAN to check for byte endianness.
...
* config/rs6000/rs6000.c (rs6000_adjust_atomic_subword): Use
BYTES_BIG_ENDIAN rather than WORDS_BIG_ENDIAN to check for byte
endianness.
From-SVN: r212258
2014-07-03 06:13:48 +00:00
Tobias Burnus
90c4f6ba0a
scanner.c (skip_free_comments): Fix indentation.
...
2014-07-03 Tobias Burnus <burnus@net-b.de>
* scanner.c (skip_free_comments): Fix indentation.
From-SVN: r212257
2014-07-03 07:29:47 +02:00
Zhenqiang Chen
e42e3d15a2
loop-invariant.c (struct invariant): Add a new member: eqno;
...
ChangeLog:
2014-07-03 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* loop-invariant.c (struct invariant): Add a new member: eqno;
(find_identical_invariants): Update eqno;
(create_new_invariant): Init eqno;
(get_inv_cost): Compute comp_cost with eqno;
testsuite/ChangeLog:
2014-07-03 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* gcc.target/arm/identical-invariants.c: New test.
From-SVN: r212256
2014-07-03 05:24:12 +00:00
GCC Administrator
44a638118f
Daily bump.
...
From-SVN: r212253
2014-07-03 00:17:48 +00:00
Segher Boessenkool
4ed3092ff8
Only transform rotate to rotatert and v.v. if target has both
...
Many targets do not have both rotate and rotatert. Of the 47 targets
in the tree, 17 have both, 9 have only rotate, 2 have only rotatert, and
19 have neither (this is based on "grep -wil" so it can be slightly off).
rs6000 has only rotate, and mips has only rotatert. For such targets
simplifying rotate to rotatert and vice versa is not simplifying things
at all. rs6000 has already way too many rotate patterns (some days it
seems like two thousand, but it is somewhat less in reality still); I
would prefer not to double that again.
So, this patch makes genrecog define HAVE_rotate and HAVE_rotatert if
those RTL codes are mentioned anywhere in the machine description, and
then does the transformation in simplify-rtx.c only if both these flags
are set.
From-SVN: r212239
2014-07-02 22:19:19 +02:00
Uros Bizjak
1680a43208
* config/fpu-sysv.h (void set_fpu): Remove stalled comment.
...
From-SVN: r212235
2014-07-02 18:11:46 +02:00
Jan Hubicka
22e1cf1ced
c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before releasing symbol.
...
* c-decl.c (duplicate_decls): CLear DECL_STRUCT_FUNCTION before
releasing symbol.
* gcc.c-torture/compile/section.c: New testcase.
Co-Authored-By: Chen Gang <gang.chen.5i5j@gmail.com>
From-SVN: r212234
2014-07-02 15:23:56 +00:00
Ian Lance Taylor
9490fda67a
re PR go/61620 (FAIL: go.test/test/fixedbugs/bug242.go execution, -O2 -g)
...
PR go/61620
runtime: Don't free tiny blocks in map deletion.
The memory allocator now has a special case for tiny blocks
(smaller than 16 bytes) and they can not be explicitly freed.
From-SVN: r212233
2014-07-02 14:23:45 +00:00
Christian Bruel
513c5c74ce
add bugzilla links
...
From-SVN: r212232
2014-07-02 15:20:01 +02:00
Christian Bruel
cbee452f8d
add test
...
From-SVN: r212231
2014-07-02 15:15:08 +02:00
Christian Bruel
cbb1e3d98c
Support mode toggle.
...
* mode-switching.c (struct bb_info): Add mode_out, mode_in caches.
(make_preds_opaque): Delete.
(clear_mode_bit, mode_bit_p, set_mode_bit): New macros.
(commit_mode_sets): New function.
(optimize_mode_switching): Handle current_mode to mode_switching_emit.
Process all modes at once.
* basic-block.h (pre_edge_lcm_avs): Declare.
* lcm.c (pre_edge_lcm_avs): Renamed from pre_edge_lcm.
Call clear_aux_for_edges. Fix comments.
(pre_edge_lcm): New wrapper function to call pre_edge_lcm_avs.
(pre_edge_rev_lcm): Idem.
* config/epiphany/epiphany.c (emit_set_fp_mode): Add prev_mode parameter.
* config/epiphany/epiphany-protos.h (emit_set_fp_mode): Idem.
* config/epiphany/resolve-sw-modes.c (pass_resolve_sw_modes::execute): Idem.
* config/i386/i386.c (x96_emit_mode_set): Idem.
* config/sh/sh.c (sh_emit_mode_set): Likewise. Handle PR toggle.
* config/sh/sh.md (toggle_pr): Defined if TARGET_FPU_SINGLE.
(fpscr_toggle) Disallow from delay slot.
* target.def (emit_mode_set): Add prev_mode parameter.
* doc/tm.texi: Regenerate.
From-SVN: r212230
2014-07-02 15:03:14 +02:00
Jakub Jelinek
b18f1efce0
decl.c (variable_decl): Reject old style initialization for derived type components.
...
* decl.c (variable_decl): Reject old style initialization
for derived type components.
* gfortran.dg/oldstyle_5.f: New test.
Co-Authored-By: Fritz Reese <Reese-Fritz@zai.com>
From-SVN: r212227
2014-07-02 11:43:08 +02:00
Francois-Xavier Coudert
4a72ba02f4
* config/fpu-glibc.h: Fix comment about FE_DENORMAL.
...
From-SVN: r212226
2014-07-02 09:17:04 +00:00