1. 06 Nov, 2013 40 commits
    • macro.c (_cpp_builtin_macro_text): Correct wording of two warnings. · 5157b91e
      libcpp/
      2013-11-06  Tobias Burnus  <burnus@net-b.de>
      
              * macro.c (_cpp_builtin_macro_text): Correct
              wording of two warnings.
      
      gcc/c-family/
      2013-11-06  Tobias Burnus  <burnus@net-b.de>
      
              * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME.
      
      gcc/
      2013-11-06  Tobias Burnus  <burnus@net-b.de>
      
              * doc/invoke.texi (Wdate-time): Fix typo.
      
      gcc/testsuite/
      2013-11-06  Tobias Burnus  <burnus@net-b.de>
      
              * g++.dg/warn/wdate-time.C: Update dg-error pattern.
              * gcc.dg/wdate-time.c: Ditto.
              * gfortran.dg/wdate-time.F90: Ditto.
      
      From-SVN: r204486
      Tobias Burnus committed
    • Check __x86_64__ for FPU state · e276866f
      	PR sanitizer/59018
      	* sanitizer_common/sanitizer_platform_limits_posix.cc
      	(struct_user_fpxregs_struct_sz): Initialize to 0 if __x86_64__ is
      	defined.
      
      From-SVN: r204483
      H.J. Lu committed
    • Use 64-bit system types for x86-64 · f5c36cfc
      	PR sanitizer/59018
      	* sanitizer_common/sanitizer_platform_limits_linux.cc
      	(struct_kernel_stat64_sz): Initialize to 0 if __x86_64__ is
      	defined.
      	* sanitizer_common/sanitizer_platform_limits_posix.h
      	(__sanitizer_dirent): Use 64-bit d_ino/d_off if __x86_64__ is
      	defined.
      	(__sanitizer___kernel_uid_t): Typedef as unsigned if __x86_64__
      	is defined.
      	(__sanitizer___kernel_gid_t): Likewise.
      	(__sanitizer___kernel_off_t): Typedef as long long if __x86_64__
      	is defined.
      
      From-SVN: r204482
      H.J. Lu committed
    • Fix internal_clone for x32 · e45de14e
      	PR sanitizer/59018
      	* sanitizer_common/sanitizer_linux.cc (internal_clone): Allocate
      	2 64-bit integers to save and restore fn and arg.  Properly load
      	newtls/child_tidptr into r8/r10.
      
      From-SVN: r204481
      H.J. Lu committed
    • Cast pointers to uptr for 64-bit syscalls · 38693e39
      	PR sanitizer/59018
      	* sanitizer_common/sanitizer_linux.cc (internal_mmap,
      	internal_munmap, internal_open, internal_read, internal_write,
      	internal_stat, internal_lstat, internal_fstat, internal_readlink,
      	internal_unlink, internal_execve, NanoTime, BlockingMutex::Lock,
      	BlockingMutex::Unlock, internal_ptrace, internal_getdents,
      	internal_sigaltstack): Cast pointers to uptr for 64-bit syscalls.
      
      From-SVN: r204480
      H.J. Lu committed
    • Fix spacing. · e2baa574
      From-SVN: r204479
      Mike Stump committed
    • sh.md (addsf3, [...]): Use fp_arith_reg_operand instead of arith_reg_operand. · 245eb552
      	* config/sh/sh.md (addsf3, divsf3, divsf3_i, rsqrtsf2, cmpgtdf_t,
      	cmpeqdf_t, *ieee_ccmpeqdf_t, negdf2, sqrtdf2, absdf2): Use
      	fp_arith_reg_operand instead of arith_reg_operand.
      
      From-SVN: r204478
      Oleg Endo committed
    • sh.md (adddi3): Remove empty constraints. · 5b67c358
      	* config/sh/sh.md (adddi3): Remove empty constraints.
      	Remove can_create_pseudo_p and arith_reg_operand check.
      	(adddi3_compact, subdi3_compact, *negdi2): Remove constraints.
      	Split before reload.
      
      From-SVN: r204477
      Oleg Endo committed
    • gdbinit.in: Disable strict type checking. · 2a936959
             * gdbinit.in: Disable strict type checking.
      
      Co-Authored-By: Tom Tromey <tromey@redhat.com>
      
      From-SVN: r204474
      Jeff Law committed
    • re PR rtl-optimization/30807 (postreload bug (might be generic in trunk)) · 73afb55d
      	PR target/30807
      	* gcc.target/sh/torture/pr30807.c: New.
      
      From-SVN: r204473
      Oleg Endo committed
    • re PR c++/11006 ([CNI] ICE with use of __java_boolean) · 71b71b96
      /cp
      2013-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/11006
      	* init.c (build_new_1): Don't call build_java_class_ref on non-class
      	types.
      
      /testsuite
      2013-11-06  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/11006
      	* g++.dg/other/java3.C: New.
      
      From-SVN: r204469
      Paolo Carlini committed
    • libgo: Update to October 24 version of master library. · f038dae6
      From-SVN: r204466
      Ian Lance Taylor committed
    • tree-pass.h (make_pass_live_range_shrinkage): New external. · f20f2613
      2013-11-06  Vladimir Makarov  <vmakarov@redhat.com>
      
      	* tree-pass.h (make_pass_live_range_shrinkage): New external.
      	* timevar.def (TV_LIVE_RANGE_SHRINKAGE): New.
      	* sched-rgn.c (gate_handle_live_range_shrinkage): New.
      	(rest_of_handle_live_range_shrinkage): Ditto
      	(class pass_live_range_shrinkage): Ditto.
      	(pass_data_live_range_shrinkage): Ditto.
      	(make_pass_live_range_shrinkage): Ditto.
      	* sched-int.h (initialize_live_range_shrinkage): New prototype.
      	(finish_live_range_shrinkage): Ditto.
      	* sched-deps.c (create_insn_reg_set): Make void return value.
      	* passes.def: Add pass_live_range_shrinkage.
      	* ira.c (update_equiv_regs): Don't move if
      	flag_live_range_shrinkage.
      	* haifa-sched.c (live_range_shrinkage_p): New.
      	(initialize_live_range_shrinkage, finish_live_range_shrinkage):
      	New functions.
      	(rank_for_schedule): Add code for pressure relief through live
      	range shrinkage.
      	(schedule_insn): Print more debug info.
      	(sched_init): Setup SCHED_PRESSURE_WEIGHTED for pressure relief
      	through live range shrinkage.
      	* doc/invoke.texi (-flive-range-shrinkage): New.
      	* common.opt (flive-range-shrinkage): New.
      
      From-SVN: r204465
      Vladimir Makarov committed
    • re PR target/59021 (new vzeroupper instructions generated with -mavx) · 992147ee
      	PR target/59021
      	* config/i386/i386.c (ix86_avx_u128_mode_needed): Require
      	AVX_U128_DIRTY mode for call_insn RTXes that use AVX256 registers.
      	(ix86_avx_u128_mode_needed): Return AVX_U128_DIRTY mode for call_insn
      	RTXes that return in AVX256 register.
      
      testsuite/ChangeLog:
      
      	PR target/59021
      	* gcc.target/i386/pr59021.c: New test.
      
      From-SVN: r204464
      Uros Bizjak committed
    • gcc-defs.exp (dg-additional-files-options): Extend regsub for… · b6e168f3
      gcc-defs.exp (dg-additional-files-options): Extend regsub for dg-additional-files to also match BOL.
      
      2013-11-06  James Lemke  <jwlemke@codesourcery.com>
      
      	* lib/gcc-defs.exp (dg-additional-files-options): Extend regsub for
      	dg-additional-files to also match BOL.
      
      From-SVN: r204462
      James Lemke committed
    • c-opts.c (c_common_post_options): Set -ffp-contract=off in C standards modes. · 6dbe0958
      c-family:
      	* c-opts.c (c_common_post_options): Set -ffp-contract=off in C
      	standards modes.
      	* c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast
      	to mean lack of IEEE 754 support.
      
      testsuite:
      	* gcc.dg/torture/c99-contract-1.c: New test.
      
      From-SVN: r204460
      Joseph Myers committed
    • go-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was turned on… · 1d2217b6
      go-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was turned on by an optimization option, turn it off.
      
      	* go-lang.c (go_langhook_post_options): If
      	-fisolate-erroneous-paths was turned on by an optimization option,
      	turn it off.
      
      From-SVN: r204459
      Ian Lance Taylor committed
    • re PR tree-optimization/58653 (wrong code (segfaults) at -O3 on x86_64-linux-gnu… · 9f2b860b
      re PR tree-optimization/58653 (wrong code (segfaults) at -O3 on x86_64-linux-gnu in 64-bit mode (affecting gcc 4.6 to trunk))
      
      2013-11-06  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58653
      	* tree-predcom.c (ref_at_iteration): Rewrite to generate
      	a MEM_REF.
      	(prepare_initializers_chain): Adjust.
      
      	* gcc.dg/tree-ssa/predcom-6.c: New testcase.
      	* gcc.dg/tree-ssa/predcom-7.c: Likewise.
      
      From-SVN: r204458
      Richard Biener committed
    • fib.c: Reduced the iteration from 40 to 30. · 28d31e40
      2013-11-05  Balaji V. Iyer  <balaji.v.iyer@intel.com>
      
              * c-c++-common/cilk-plus/CK/fib.c: Reduced the iteration from
              40 to 30.  Replaced iteration variable with a #define.  Instead of
              returning non-zero value for error, called __builtin_abort ().  Fixed
              a bug of calling fib_serial in serial case instead of fib.
              * c-c++-common/cilk-plus/CK/fib_init_expr_xy.c: Likewise.
              * c-c++-common/cilk-plus/CK/fib_no_return.c: Likewise.
              * c-c++-common/cilk-plus/CK/fib_no_sync.c: Likewise.
              * gcc.dg/cilk-plus/cilk-plus.exp: Removed duplicate/un-necessary
              compiler flag testing.
      
      From-SVN: r204457
      Balaji V. Iyer committed
    • typo · 3e89949e
      From-SVN: r204456
      Jason Merrill committed
    • gimple.h (block_in_transaction): Move to basic-block.h and rename. · 7783daa7
      	* gimple.h (block_in_transaction): Move to basic-block.h and rename.
      	(gimple_in_transaction): Use bb_in_transaction.
      	* basic-block.h (bb_in_transaction): Relocate here and rename.
      	* tree-ssa-loop-im.c (execute_sm): Use bb_in_transaction.
      
      From-SVN: r204455
      Andrew MacLeod committed
    • tree.c (drop_tree_overflow): New function. · 3f5c390d
      2013-11-06  Richard Biener  <rguenther@suse.de>
      
      	* tree.c (drop_tree_overflow): New function.
      	* tree.h (drop_tree_overflow): Declare.
      	* gimplify.c (gimplify_expr): Drop TREE_OVERFLOW.
      	* tree-vrp.c (range_int_cst_singleton_p): Use
      	is_overflow_infinity instead of testing TREE_OVERFLOW.
      	(extract_range_from_assert): Likewise.
      	(zero_nonzero_bits_from_vr): Likewise.
      	(extract_range_basic): Likewise.
      	(register_new_assert_for): Use drop_tree_overflow.
      	(vrp_visit_phi_node): Likewise.
      
      From-SVN: r204454
      Richard Biener committed
    • preprocessor/58580 - preprocessor goes OOM with warning for zero literals · 9789a912
      In this problem report, the compiler is fed a (bogus) translation unit
      in which some literals contain bytes whose value is zero.  The
      preprocessor detects that and proceeds to emit diagnostics for that
      king of bogus literals.  But then when the diagnostics machinery
      re-reads the input file again to display the bogus literals with a
      caret, it attempts to calculate the length of each of the lines it got
      using fgets.  The line length calculation is done using strlen.  But
      that doesn't work well when the content of the line can have several
      zero bytes.  The result is that the read_line never sees the end of
      the line because strlen repeatedly reports that the line ends before
      the end-of-line character; so read_line thinks its buffer for reading
      the line is too small; it thus increases the buffer, leading to a huge
      memory consumption, pain and disaster.
      
      The patch below introduces a new get_line function that returns the
      next line of a file and return the length of that line even if the
      line contains zero bytes.  That get_line function has been adapted
      from the getline function from the GNU C Library because getline being
      a GNU extension it is not necessarily supported on all platforms.
      read_line is then modified to return the length of the line along with
      the line itself, as the line can now contain zero bytes.  Callers of
      read_line are adjusted consequently.
      
      diagnostic_show_locus() is modified to consider that a line can have
      characters of value zero, and so just shows a white space when
      instructed to display one of these characters.
      
      gcc/ChangeLog:
      
      	* input.h (location_get_source_line): Take an additional line_size
      	parameter.
      	* input.c (get_line): New static function definition.
      	(read_line): Take an additional line_length output parameter to be
      	set to the size of the line.  Use the new get_line function do the
      	actual line reading.
      	(location_get_source_line): Take an additional output line_len
      	parameter.  Update the use of read_line to pass it the line_len
      	parameter.
      	* diagnostic.c (adjust_line): Take an additional input parameter
      	for the length of the line, rather than calculating it with
      	strlen.
      	(diagnostic_show_locus): Adjust the use of
      	location_get_source_line and adjust_line with respect to their new
      	signature.  While displaying a line now, do not stop at the first
      	null byte.  Rather, display the zero byte as a space and keep
      	going until we reach the size of the line.
      
      gcc/testsuite/ChangeLog:
      
      	* c-c++-common/cpp/warning-zero-in-literals-1.c: New test file.
      
      From-SVN: r204453
      Dodji Seketeli committed
    • Fix formatting · 6dce150c
      From-SVN: r204452
      Eric Botcazou committed
    • i386.c (ix86_expand_prologue): Optimize stack checking for leaf functions… · 0dca9cd8
      i386.c (ix86_expand_prologue): Optimize stack checking for leaf functions without dynamic stack allocation.
      
      	* config/i386/i386.c (ix86_expand_prologue): Optimize stack checking for
      	leaf functions without dynamic stack allocation.
      	* config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust.
      	(ia64_expand_prologue): Likewise.
      	* config/mips/mips.c (mips_expand_prologue): Likewise.
      	* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
      	* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
      	(sparc_flat_expand_prologue): Likewise.
      
      From-SVN: r204450
      Eric Botcazou committed
    • regex_automaton.h (_S_opcode_word_boundry): Rename to _S_opcode_word_boundary. · f054ff5b
      	* include/bits/regex_automaton.h (_S_opcode_word_boundry): Rename to
      	_S_opcode_word_boundary.
      	* include/bits/regex_automaton.tcc: Likewise.
      	* include/bits/regex_executor.h (__detail::_Executor::_M_word_boundry):
      	Rename to _M_word_boundary.
      	* include/bits/regex_executor.tcc: Likewise.
      
      From-SVN: r204449
      Jonathan Wakely committed
    • [AArch64] Fix size of memory store for the vst<n>_lane intrinsics · 1ee58398
      gcc/
      	* config/aarch64/arm_neon.h
      	(__ST2_LANE_FUNC): Better model data size.
      	(__ST3_LANE_FUNC): Likewise.
      	(__ST4_LANE_FUNC): Likewise.
      
      From-SVN: r204448
      James Greenhalgh committed
    • msp430.h (TARGET_CPU_CPP_BUILTINS): Define the name returned by msp430_mcu_name. · 50cfbf99
      	* config/msp430/msp430.h (TARGET_CPU_CPP_BUILTINS): Define the
      	name returned by msp430_mcu_name.
      	(LIB_SPEC): If a -T option has not been specified then set a
      	default, mcu-specific, linker script.
      	* config/msp430/t-msp430 (MULTILIB_MATCHES): Add more mcu names.
      	* config/msp430/msp430.c (msp430x_names): Likewise.
      	Alpha sort the names for ease of comparison.
      	(msp430_mcu_name): New function:  Returns a string suitable for
      	use as a C preprocessor symbol based upon the name of the MCU
      	being targeted.
      	(msp430_option_override): Accept msp430x and msp430xv2 as generic
      	mcu names.
      	* config/msp430/msp430-protos.h (msp430_mcu_name): Prototype.
      
      From-SVN: r204447
      Nick Clifton committed
    • gcc.c (do_spec_1): Do not insert a space after a %* substitution unless... · 25990163
      	* gcc.c (do_spec_1): Do not insert a space after a %* substitution
      	unless it is the last part of a spec substring.
      	* doc/invoke.texi (Spec Files): Document space insertion
      	behaviour of %*.
      
      From-SVN: r204446
      Nick Clifton committed
    • sh-mem.cc (sh_expand_cmpnstr, [...]): Factorize probabilities... · 3a1a7897
      2013-11-06  Christian Bruel  <christian.bruel@st.com>
      
      	* gcc/config/sh/sh-mem.cc (sh_expand_cmpnstr, sh_expand_cmpstr):
      	Factorize probabilities, Use adjust_address instead of
      	adjust_automodify_address when possible. Enable for optimize.
      	(sh_expand_strlen): New function.
      	* gcc/config/sh/sh-protos.h (sh_expand_strlen): Declare.
      	* gcc/config/sh/sh.md (strlensi): New pattern.
      	(UNSPEC_BUILTIN_STRLEN): Define.
      
      From-SVN: r204445
      Christian Bruel committed
    • re PR middle-end/58970 (internal compiler error: in get_bit_range, at expr.c:4562) · fda1ba0a
      	PR middle-end/58970
      	* expr.c (get_bit_range): Handle *offset == NULL_TREE.
      	(expand_assignment): If *bitpos is negative, set *offset
      	and adjust *bitpos, so that it is not negative.
      
      	* gcc.c-torture/compile/pr58970.c: New test.
      
      From-SVN: r204444
      Jakub Jelinek committed
    • * gfortran.texi: Fix typo. · 10180dd3
      From-SVN: r204443
      Francois-Xavier Coudert committed
    • scheduler improvements for BD architectures · 4a1db8e1
      From-SVN: r204442
      Ganesh Gopalasubramanian committed
    • rs6000.c (rs6000_option_override_internal): Remove restriction against use of… · 3118d595
      rs6000.c (rs6000_option_override_internal): Remove restriction against use of VSX instructions when...
      
      2013-11-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_option_override_internal):
      	Remove restriction against use of VSX instructions when generating
      	code for little endian mode.
      
      From-SVN: r204441
      Bill Schmidt committed
    • altivec.md (mulv4si3): Ensure we generate vmulouh for both big and little endian. · 2b9d0476
      2013-11-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/altivec.md (mulv4si3): Ensure we generate vmulouh
      	for both big and little endian.
      	(mulv8hi3): Swap input operands for merge high and merge low
      	instructions for little endian.
      
      From-SVN: r204440
      Bill Schmidt committed
    • altivec.md (vec_widen_umult_even_v16qi): Change define_insn to define_expand… · 1a5d2261
      altivec.md (vec_widen_umult_even_v16qi): Change define_insn to define_expand that uses even patterns for big endian and...
      
      2013-11-05  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/altivec.md (vec_widen_umult_even_v16qi): Change
      	define_insn to define_expand that uses even patterns for big
      	endian and odd patterns for little endian.
      	(vec_widen_smult_even_v16qi): Likewise.
      	(vec_widen_umult_even_v8hi): Likewise.
      	(vec_widen_smult_even_v8hi): Likewise.
      	(vec_widen_umult_odd_v16qi): Likewise.
      	(vec_widen_smult_odd_v16qi): Likewise.
      	(vec_widen_umult_odd_v8hi): Likewise.
      	(vec_widen_smult_odd_v8hi): Likewise.
      	(altivec_vmuleub): New define_insn.
      	(altivec_vmuloub): Likewise.
      	(altivec_vmulesb): Likewise.
      	(altivec_vmulosb): Likewise.
      	(altivec_vmuleuh): Likewise.
      	(altivec_vmulouh): Likewise.
      	(altivec_vmulesh): Likewise.
      	(altivec_vmulosh): Likewise.
      
      From-SVN: r204439
      Bill Schmidt committed
    • re PR regression/58985 (gcc.dg/pr57518.c scan-rtl-dump-not ira REG_EQUIV...) · 82f63633
      2013-11-05  Wei Mi  <wmi@google.com>
      
              PR regression/58985
              * testsuite/gcc.dg/pr57518.c: Add subreg in regexp pattern.
      
      From-SVN: r204438
      Wei Mi committed
    • * Makefile.in (mostlyclean): Remove c-family objects. · 9c0fed64
      From-SVN: r204437
      Mike Stump committed
    • sync.md (atomic_compare_and_swap<dwi>_doubleword): If possible, add .cfi… · 674647e6
      sync.md (atomic_compare_and_swap<dwi>_doubleword): If possible, add .cfi directives to record change to bx.
      
      	* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
      	If possible, add .cfi directives to record change to bx.
      	* config/i386/i386.c (ix86_emit_cfi): New function.
      	* config/i386/i386-protos.h (ix86_emit_cfi): Declare.
      
      From-SVN: r204433
      Ian Lance Taylor committed
    • Daily bump. · 39cf09b1
      From-SVN: r204430
      GCC Administrator committed