Jan Hubicka [Thu, 25 Jul 2013 13:24:58 +0000 (15:24 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Release function body.
* lto-symtab.c (lto_cgraph_replace_node): Release function body.
* cgraph.c (cgraph_remove_node): Do not release function body
when in cgraph streaming.
* ipa.c (process_references, symtab_remove_unreachable_nodes): Objects
in other partitions are not considered reachable; fix handling of clones.
From-SVN: r201242
Ramana Radhakrishnan [Thu, 25 Jul 2013 12:50:14 +0000 (12:50 +0000)]
Remove unnecessary space.
From-SVN: r201241
Ramana Radhakrishnan [Thu, 25 Jul 2013 09:40:11 +0000 (09:40 +0000)]
Fix PR target/57731 PR target/57837
2013-07-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
PR target/57731
PR target/57837
* config/arm/arm.md ("*sibcall_value_insn): Replace use of
Ss with US. Adjust output for v5 and v4t.
(*sibcall_value_insn): Likewise and loosen predicate on
operand0.
* config/arm/constraints.md ("Ss"): Rename to US.
From-SVN: r201240
Janus Weil [Thu, 25 Jul 2013 08:26:36 +0000 (10:26 +0200)]
re PR fortran/57639 ([OOP] ICE with polymorphism (and illegal code))
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57639
* interface.c (compare_parameter): Check for class_ok.
* simplify.c (gfc_simplify_same_type_as): Ditto.
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57639
* gfortran.dg/unlimited_polymorphic_9.f90: New.
From-SVN: r201239
Terry Guo [Thu, 25 Jul 2013 04:10:27 +0000 (04:10 +0000)]
arm.c (thumb1_size_rtx_costs): Assign proper cost for shift_add/shift_sub0/shift_sub1 RTXs.
gcc/ChangeLog:
2013-07-24 Terry Guo <terry.guo@arm.com>
* config/arm/arm.c (thumb1_size_rtx_costs): Assign proper cost for
shift_add/shift_sub0/shift_sub1 RTXs.
gcc/testsuite/ChangeLog:
2013-07-24 Terry Guo <terry.guo@arm.com>
* gcc.target/arm/thumb1-Os-mult.c: New test case.
From-SVN: r201237
Bill Schmidt [Thu, 25 Jul 2013 01:24:14 +0000 (01:24 +0000)]
altivec.md (altivec_vpkpx): Handle little endian.
2013-07-24 Bill Schmidt <wschmidt@linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/altivec.md (altivec_vpkpx): Handle little endian.
(altivec_vpks<VI_char>ss): Likewise.
(altivec_vpks<VI_char>us): Likewise.
(altivec_vpku<VI_char>us): Likewise.
(altivec_vpku<VI_char>um): Likewise.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201235
Paolo Carlini [Thu, 25 Jul 2013 00:46:46 +0000 (00:46 +0000)]
re PR libstdc++/57976 (Missing time_get<>::get() functions)
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57976
* doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
time_get::do_get.
From-SVN: r201234
GCC Administrator [Thu, 25 Jul 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201233
David Malcolm [Thu, 25 Jul 2013 00:14:01 +0000 (00:14 +0000)]
Introduce context class.
2013-07-24 David Malcolm <dmalcolm@redhat.com>
Introduce context class.
* Makefile.in (CONTEXT_H): New.
(OBJS): Add context.o.
(toplev.o): Add CONTEXT_H to dependencies.
(context.o): New.
* toplev.c (general_init): Create the singleton gcc::context
instance.
* context.c: New.
* context.h: New.
From-SVN: r201230
Ian Lance Taylor [Wed, 24 Jul 2013 22:30:25 +0000 (22:30 +0000)]
runtime: Handle allocating memory in cgo/SWIG function.
A function that returns an interface type and returns a value
that requires memory allocation will try to allocate while
appearing to be in a syscall. This patch lets that work.
From-SVN: r201226
Joern Rennecke [Wed, 24 Jul 2013 20:12:49 +0000 (20:12 +0000)]
re PR rtl-optimization/57968 (MODE_EXIT switches inserted too early)
PR rtl-optimization/57968
* mode-switching.c (create_pre_exit): Allow instructions that
don't set a return register to need a non-exit mode.
From-SVN: r201225
Ian Lance Taylor [Wed, 24 Jul 2013 18:25:51 +0000 (18:25 +0000)]
go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a fields...
* go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
fields, recreate those fields with the first one with a non-zero
size.
From-SVN: r201222
Ian Lance Taylor [Wed, 24 Jul 2013 17:37:07 +0000 (17:37 +0000)]
runtime: Check _end rather than end to find end of program.
This fixes a problem on Solaris, where end is not defined in
the main program but comes from some shared library. This
only matters for 32-bit targets.
From-SVN: r201220
Ian Lance Taylor [Wed, 24 Jul 2013 16:53:17 +0000 (16:53 +0000)]
net: Only use GNU/Linux unix socket abstract paths on GNU/Linux.
From-SVN: r201217
Paolo Carlini [Wed, 24 Jul 2013 15:42:06 +0000 (15:42 +0000)]
random.h (random_device): Avoid using the FILE type.
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (random_device): Avoid using the FILE type.
* include/std/random: Do not include <cstdio>.
* src/c++11/random.cc: ... include it here.
(random_device::_M_init, random_device::_M_fini,
random_device::_M_getval): Cast back and forth void* and FILE*.
From-SVN: r201215
Tim Shen [Wed, 24 Jul 2013 14:39:54 +0000 (14:39 +0000)]
Reimplment matcher using Depth-first search(backtracking).
2013-07-24 Tim Shen <timshen91@gmail.com>
Reimplment matcher using Depth-first search(backtracking).
PR libstdc++/53622
PR libstdc++/57173
* include/bits/regex.h: regex_match() and regex_search().
* include/bits/regex_cursor.h: Fix _M_set_pos().
* include/bits/regex_grep_matcher.h: add _M_dfs_match().
* include/bits/regex_grep_matcher.tcc: Implement it.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_01.cc:
New.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_02.cc:
New.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
Remove xfail.
From-SVN: r201213
Ian Lance Taylor [Wed, 24 Jul 2013 13:18:45 +0000 (13:18 +0000)]
runtime: Move new 1.1.1 functions from thread-linux.c to runtime.c.
This way they are compiled on non-GNU/Linux systems.
From-SVN: r201209
Bill Schmidt [Wed, 24 Jul 2013 13:17:31 +0000 (13:17 +0000)]
vector.md (vec_realign_load_<mode>): Reorder input operands to vperm for little endian.
2013-07-24 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* vector.md (vec_realign_load_<mode>): Reorder input operands to
vperm for little endian.
* rs6000.c (rs6000_expand_builtin): Use lvsr instead of lvsl to
create the control mask for a vperm for little endian.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201208
Ian Lance Taylor [Wed, 24 Jul 2013 13:09:32 +0000 (13:09 +0000)]
net/http: Don't try to trace sendfile64 on alpha.
From Uros Bizjak.
From-SVN: r201206
Paolo Carlini [Wed, 24 Jul 2013 08:37:37 +0000 (08:37 +0000)]
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
Tweak last ChangeLog entry.
From-SVN: r201202
Paolo Carlini [Wed, 24 Jul 2013 08:35:54 +0000 (08:35 +0000)]
re PR c++/57942 (g++-4.8.1 tries to instantiate wrong constructor)
/cp
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57942
* typeck.c (ptr_reasonably_similar): Use COMPARE_STRICT if one of
the target types is incomplete; return a bool, not an int.
* cp-tree.h (ptr_reasonably_similar): Adjust declaration.
/testsuite
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57942
* g++.dg/inherit/pr57942.C: New.
From-SVN: r201201
Michael Eager [Wed, 24 Jul 2013 00:19:58 +0000 (00:19 +0000)]
Correct ChangeLog for 201185.
From-SVN: r201200
GCC Administrator [Wed, 24 Jul 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201199
Bill Schmidt [Tue, 23 Jul 2013 22:36:04 +0000 (22:36 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Reverse two operands for little-endian.
2013-07-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Reverse
two operands for little-endian.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201195
Steve Ellcey [Tue, 23 Jul 2013 22:34:10 +0000 (22:34 +0000)]
mips.c (mips_case_values_threshold): New.
2013-07-23 Steve Ellcey <sellcey@mips.com>
* config/mips/mips.c (mips_case_values_threshold): New.
(TARGET_CASE_VALUES_THRESHOLD): Define.
From-SVN: r201194
Bill Schmidt [Tue, 23 Jul 2013 22:30:58 +0000 (22:30 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Correct selection of field for vector splat in little endian mode.
2013-07-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Correct
selection of field for vector splat in little endian mode.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201193
Ian Lance Taylor [Tue, 23 Jul 2013 21:23:27 +0000 (21:23 +0000)]
log/syslog: Restore interface to make this work on Solaris again.
From-SVN: r201188
Michael Meissner [Tue, 23 Jul 2013 21:19:03 +0000 (21:19 +0000)]
vector.md (xor<mode>3): Move 128-bit boolean expanders to rs6000.md.
[gcc]
2013-07-23 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/vector.md (xor<mode>3): Move 128-bit boolean
expanders to rs6000.md.
(ior<mode>3): Likewise.
(and<mode>3): Likewise.
(one_cmpl<mode>2): Likewise.
(nor<mode>3): Likewise.
(andc<mode>3): Likewise.
(eqv<mode>3): Likewise.
(nand<mode>3): Likewise.
(orc<mode>3): Likewise.
* config/rs6000/rs6000-protos.h (rs6000_split_logical): New
declaration.
* config/rs6000/rs6000.c (rs6000_split_logical_inner): Add support
to split multi-word logical operations.
(rs6000_split_logical_di): Likewise.
(rs6000_split_logical): Likewise.
* config/rs6000/vsx.md (VSX_L2): Delete, no longer used.
(vsx_and<mode>3_32bit): Move 128-bit logical insns to rs6000.md,
and allow TImode operations in 32-bit.
(vsx_and<mode>3_64bit): Likewise.
(vsx_ior<mode>3_32bit): Likewise.
(vsx_ior<mode>3_64bit): Likewise.
(vsx_xor<mode>3_32bit): Likewise.
(vsx_xor<mode>3_64bit): Likewise.
(vsx_one_cmpl<mode>2_32bit): Likewise.
(vsx_one_cmpl<mode>2_64bit): Likewise.
(vsx_nor<mode>3_32bit): Likewise.
(vsx_nor<mode>3_64bit): Likewise.
(vsx_andc<mode>3_32bit): Likewise.
(vsx_andc<mode>3_64bit): Likewise.
(vsx_eqv<mode>3_32bit): Likewise.
(vsx_eqv<mode>3_64bit): Likewise.
(vsx_nand<mode>3_32bit): Likewise.
(vsx_nand<mode>3_64bit): Likewise.
(vsx_orc<mode>3_32bit): Likewise.
(vsx_orc<mode>3_64bit): Likewise.
* config/rs6000/rs6000.h (VLOGICAL_REGNO_P): Always allow vector
logical types in GPRs.
* config/rs6000/altivec.md (altivec_and<mode>3): Move 128-bit
logical insns to rs6000.md, and allow TImode operations in
32-bit.
(altivec_ior<mode>3): Likewise.
(altivec_xor<mode>3): Likewise.
(altivec_one_cmpl<mode>2): Likewise.
(altivec_nor<mode>3): Likewise.
(altivec_andc<mode>3): Likewise.
* config/rs6000/rs6000.md (BOOL_128): New mode iterators and mode
attributes for moving the 128-bit logical operations into
rs6000.md.
(BOOL_REGS_OUTPUT): Likewise.
(BOOL_REGS_OP1): Likewise.
(BOOL_REGS_OP2): Likewise.
(BOOL_REGS_UNARY): Likewise.
(BOOL_REGS_AND_CR0): Likewise.
(one_cmpl<mode>2): Add support for DI logical operations on
32-bit, splitting the operations to 32-bit.
(anddi3): Likewise.
(iordi3): Likewise.
(xordi3): Likewise.
(and<mode>3, 128-bit types): Rewrite 2013-06-06 logical operator
changes to combine the 32/64-bit code, allow logical operations on
TI mode in 32-bit, and to use similar match_operator patterns like
scalar mode uses. Combine the Altivec and VSX code for logical
operations, and move it here.
(ior<mode>3, 128-bit types): Likewise.
(xor<mode>3, 128-bit types): Likewise.
(one_cmpl<mode>3, 128-bit types): Likewise.
(nor<mode>3, 128-bit types): Likewise.
(andc<mode>3, 128-bit types): Likewise.
(eqv<mode>3, 128-bit types): Likewise.
(nand<mode>3, 128-bit types): Likewise.
(orc<mode>3, 128-bit types): Likewise.
(and<mode>3_internal): Likewise.
(bool<mode>3_internal): Likewise.
(boolc<mode>3_internal1): Likewise.
(boolc<mode>3_internal2): Likewise.
(boolcc<mode>3_internal1): Likewise.
(boolcc<mode>3_internal2): Likewise.
(eqv<mode>3_internal1): Likewise.
(eqv<mode>3_internal2): Likewise.
(one_cmpl1<mode>3_internal): Likewise.
[gcc/testsuite]
2013-07-23 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/bool2.h: New file, test the code generation
of logical operations for power5, altivec, power7, and power8
systems.
* gcc.target/powerpc/bool2-p5.c: Likewise.
* gcc.target/powerpc/bool2-av.c: Likewise.
* gcc.target/powerpc/bool2-p7.c: Likewise.
* gcc.target/powerpc/bool2-p8.c: Likewise.
* gcc.target/powerpc/bool3.h: Likewise.
* gcc.target/powerpc/bool3-av.c: Likewise.
* gcc.target/powerpc/bool2-p7.c: Likewise.
* gcc.target/powerpc/bool2-p8.c: Likewise.
From-SVN: r201187
David Holsgrove [Tue, 23 Jul 2013 21:15:21 +0000 (21:15 +0000)]
microblaze.c (microblaze_expand_prologue): Rename flag_stack_usage to flag_stack_usage_info.
* config/microblaze/microblaze.c (microblaze_expand_prologue):
Rename flag_stack_usage to flag_stack_usage_info.
From-SVN: r201186
David Holsgrove [Tue, 23 Jul 2013 21:09:50 +0000 (21:09 +0000)]
microblaze.c: Add microblaze_asm_output_mi_thunk and define TARGET_ASM_OUTPUT_MI_THUNK and...
* config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
and define TARGET_ASM_OUTPUT_MI_THUNK and
TARGET_ASM_CAN_OUTPUT_MI_THUNK.
From-SVN: r201185
Ian Lance Taylor [Tue, 23 Jul 2013 20:38:49 +0000 (20:38 +0000)]
net: Remove Solaris-specific version of listenerSockaddr.
Solaris will use the version in sock_unix.go.
From-SVN: r201183
Ian Lance Taylor [Tue, 23 Jul 2013 20:32:26 +0000 (20:32 +0000)]
runtime: Declare epoll_create1 if necessary.
From-SVN: r201181
Ian Lance Taylor [Tue, 23 Jul 2013 20:26:09 +0000 (20:26 +0000)]
runtime: Support cgo callbacks from threads started by C.
This adjusts the extram support to work with gccgo. There are
some corresponding changes to cgo in
https://codereview.appspot.com/
11406047/ .
From-SVN: r201179
Joseph Myers [Tue, 23 Jul 2013 20:17:52 +0000 (21:17 +0100)]
* c-parser.c (struct c_generic_association): Fix typo.
From-SVN: r201178
Eric Botcazou [Tue, 23 Jul 2013 18:11:07 +0000 (18:11 +0000)]
* doc/invoke.texi (SPARC Options): Document new leon3 processor value.
From-SVN: r201177
Ian Lance Taylor [Tue, 23 Jul 2013 16:14:13 +0000 (16:14 +0000)]
go-backend.c: Don't #include "rtl.h".
* go-backend.c: Don't #include "rtl.h".
(go_imported_unsafe): Don't call init_varasm_once.
* Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
From-SVN: r201176
Yufeng Zhang [Tue, 23 Jul 2013 16:09:50 +0000 (16:09 +0000)]
[AArch64, ILP32] Add change to gcc.target/aarch64/vect_smlal_1.c that was missed from the previous commit (r201166).
From-SVN: r201175
Po-Chun Chang [Tue, 23 Jul 2013 15:56:37 +0000 (15:56 +0000)]
reload.c (find_reloads): Exit loop once we find this operand cannot be reloaded somehow for this alternative.
2013-07-22 Po-Chun Chang <pchang9@cs.wisc.edu>
* reload.c (find_reloads): Exit loop once we find this operand
cannot be reloaded somehow for this alternative.
* reload.c (find_reloads): Exit loop once we find a hard register.
* rtlanal.c (computed_jump_p): Exit loop once we find label
reference is used.
* i386.c (ix86_pad_returns): Exit loop after setting replace.
* cfgloopmanip.c (remove_path): Exit loop after setting
irred_invalidated.
* gensupport.c (subst_dup): Avoid loop if code is not
MATCH_DUP nor MATCH_OP_DUP.
From-SVN: r201174
Nicklas Bo Jensen [Tue, 23 Jul 2013 15:39:45 +0000 (15:39 +0000)]
md.texi (Machine-Specific Peephole Optimizers): Fix a typo.
2013-07-23 Nicklas Bo Jensen <nbjensen@gmail.com>
* doc/md.texi (Machine-Specific Peephole Optimizers): Fix a
typo.
From-SVN: r201173
Ian Lance Taylor [Tue, 23 Jul 2013 13:46:26 +0000 (13:46 +0000)]
go-lang.c: Don't #include "except.h".
* go-lang.c: Don't #include "except.h".
* Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
From-SVN: r201171
Yufeng Zhang [Tue, 23 Jul 2013 12:33:14 +0000 (12:33 +0000)]
[AArch64, ILP32] 6/6 Add support for "wsp" register.
gcc/
* config/aarch64/aarch64.c (aarch64_hard_regno_mode_ok): Also return
true for SP_REGNUM if mode == ptr_mode.
* config/aarch64/aarch64.h (ADDITIONAL_REGISTER_NAMES): Add "wsp"
with value R0_REGNUM + 31.
From-SVN: r201170
Tim Shen [Tue, 23 Jul 2013 12:31:51 +0000 (12:31 +0000)]
Implement regex_iterator and regex_token_iterator.
2013-07-23 Tim Shen <timshen91@gmail.com>
Implement regex_iterator and regex_token_iterator.
* include/bits/regex.h: regex_iterator and regex_token_iterator.
* testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/string_01.cc:
New.
From-SVN: r201169
Yufeng Zhang [Tue, 23 Jul 2013 12:29:51 +0000 (12:29 +0000)]
[AArch64, ILP32] 5/6 Pad pointer-typed stack argument downward in ILP32.
gcc/
* config/aarch64/aarch64.c (aarch64_pad_arg_upward): In big-endian,
pad pointer-typed argument downward.
gcc/testsuite/
* gcc.target/aarch64/test-ptr-arg-on-stack-1.c: New test.
From-SVN: r201168
Yufeng Zhang [Tue, 23 Jul 2013 12:26:33 +0000 (12:26 +0000)]
[AArch64, ILP32] 4/6 Define _ILP32 and __ILP32__.
gcc/
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define _ILP32
and __ILP32__ when the ILP32 model is in use.
From-SVN: r201167
Yufeng Zhang [Tue, 23 Jul 2013 12:23:05 +0000 (12:23 +0000)]
[AArch64, ILP32] 3/6 Change tests to be ILP32-friendly.
gcc/testsuite/
* gcc.dg/
20020219-1.c: Skip the test on aarch64*-*-* in ilp32.
* gcc.target/aarch64/aapcs64/test_18.c (struct y): Change the field
type from long to long long.
* gcc.target/aarch64/atomic-op-long.c: Update dg-final directives
to have effective-target keywords of lp64 and ilp32.
* gcc.target/aarch64/fcvt_double_int.c: Likewise.
* gcc.target/aarch64/fcvt_double_long.c: Likewise.
* gcc.target/aarch64/fcvt_double_uint.c: Likewise.
* gcc.target/aarch64/fcvt_double_ulong.c: Likewise.
* gcc.target/aarch64/fcvt_float_int.c: Likewise.
* gcc.target/aarch64/fcvt_float_long.c: Likewise.
* gcc.target/aarch64/fcvt_float_uint.c: Likewise.
* gcc.target/aarch64/fcvt_float_ulong.c: Likewise.
* gcc.target/aarch64/vect_smlal_1.c: Replace 'long' with 'long long'.
From-SVN: r201166
Yufeng Zhang [Tue, 23 Jul 2013 12:20:05 +0000 (12:20 +0000)]
[AArch64, ILP32] 2/6 More backend changes and support for small absolute and
small PIC addressing models
gcc/
* config/aarch64/aarch64.c (POINTER_BYTES): New define.
(aarch64_load_symref_appropriately): In the case of
SYMBOL_SMALL_ABSOLUTE, use the mode of 'dest' instead of Pmode
to generate new rtx; likewise to the case of SYMBOL_SMALL_GOT.
(aarch64_expand_mov_immediate): In the case of SYMBOL_FORCE_TO_MEM,
change to pass 'ptr_mode' to force_const_mem and zero-extend 'mem'
if 'mode' doesn't equal to 'ptr_mode'.
(aarch64_output_mi_thunk): Add an assertion on the alignment of
'vcall_offset'; change to call aarch64_emit_move differently depending
on whether 'Pmode' equals to 'ptr_mode' or not; use 'POINTER_BYTES'
to calculate the upper bound of 'vcall_offset'.
(aarch64_cannot_force_const_mem): Change to also return true if
mode != ptr_mode.
(aarch64_legitimize_reload_address): In the case of large
displacements, add new local variable 'xmode' and an assertion
based on it; change to use 'xmode' to generate the new rtx and
reload.
(aarch64_asm_trampoline_template): Change to generate the template
differently depending on TARGET_ILP32 or not; change to use
'POINTER_BYTES' in the argument passed to assemble_aligned_integer.
(aarch64_trampoline_size): Removed.
(aarch64_trampoline_init): Add new local constant 'tramp_code_sz'
and replace immediate literals with it. Change to use 'ptr_mode'
instead of 'DImode' and call convert_memory_address if the mode
of 'fnaddr' doesn't equal to 'ptr_mode'.
(aarch64_elf_asm_constructor): Change to use assemble_aligned_integer
to output symbol.
(aarch64_elf_asm_destructor): Likewise.
* config/aarch64/aarch64.h (TRAMPOLINE_SIZE): Change to be dependent
on TARGET_ILP32 instead of aarch64_trampoline_size.
* config/aarch64/aarch64.md (movsi_aarch64): Add new alternatives
of 'mov' between WSP and W registers as well as 'adr' and 'adrp'.
(loadwb_pair<GPI:mode>_<PTR:mode>): Rename to ...
(loadwb_pair<GPI:mode>_<P:mode>): ... this. Replace PTR with P.
(storewb_pair<GPI:mode>_<PTR:mode>): Likewise; rename to ...
(storewb_pair<GPI:mode>_<P:mode>): ... this.
(add_losym): Change to 'define_expand' and call gen_add_losym_<mode>
depending on the value of 'mode'.
(add_losym_<mode>): New.
(ldr_got_small_<mode>): New, based on ldr_got_small.
(ldr_got_small): Remove.
(ldr_got_small_sidi): New.
* config/aarch64/iterators.md (P): New.
(PTR): Change to 'ptr_mode' in the condition.
From-SVN: r201165
Yufeng Zhang [Tue, 23 Jul 2013 12:12:53 +0000 (12:12 +0000)]
[AArch64, ILP32] 1/6 Initial support - configury changes
gcc/
* config.gcc (aarch64*-*-*): Support --with-abi.
(aarch64*-*-elf): Support --with-multilib-list.
(aarch64*-*-linux*): Likewise.
(supported_defaults): Add abi to aarch64*-*-*.
* configure.ac: Mention AArch64 for --with-multilib-list.
* configure: Re-generated.
* config/aarch64/biarchilp32.h: New file.
* config/aarch64/biarchlp64.h: New file.
* config/aarch64/aarch64-elf.h (ENDIAN_SPEC): New define.
(ABI_SPEC): Ditto.
(MULTILIB_DEFAULTS): Ditto.
(DRIVER_SELF_SPECS): Ditto.
(ASM_SPEC): Update to also substitute -mabi.
* config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Add linker script
file whose name depends on -mabi= and -mbig-endian.
* config/aarch64/aarch64.h (LONG_TYPE_SIZE): Change to depend on
TARGET_ILP32.
(POINTER_SIZE): New define.
(POINTERS_EXTEND_UNSIGNED): Ditto.
(enum aarch64_abi_type): New enumeration tag.
(AARCH64_ABI_LP64, AARCH64_ABI_ILP32): New enumerators.
(AARCH64_ABI_DEFAULT): Define to AARCH64_ABI_LP64 if undefined.
(TARGET_ILP32): New define.
* config/aarch64/aarch64.opt (mabi): New.
(aarch64_abi): New.
(ilp32, lp64): New values for -mabi.
* config/aarch64/t-aarch64 (comma): New define.
(MULTILIB_OPTIONS): Ditto.
(MULTILIB_DIRNAMES): Ditto.
* config/aarch64/t-aarch64-linux (MULTIARCH_DIRNAME): New define.
* doc/invoke.texi: Document -mabi for AArch64.
From-SVN: r201164
Georg-Johann Lay [Tue, 23 Jul 2013 11:45:57 +0000 (11:45 +0000)]
avr.md: Explain asm print modifier 'r' for REG.
* config/avr/avr.md: Explain asm print modifier 'r' for REG.
From-SVN: r201163
Ondřej Bílka [Tue, 23 Jul 2013 11:39:41 +0000 (13:39 +0200)]
decl.c: Fix comment typos.
2013-07-23 Ondřej Bílka <neleai@seznam.cz>
* decl.c: Fix comment typos.
* interface.c: Likewise.
* trans-array.c: Likewise.
* trans.c: Likewise.
From-SVN: r201162
Uros Bizjak [Tue, 23 Jul 2013 09:45:30 +0000 (11:45 +0200)]
fpu-387.h (get_fpu_rounding_mode): Read rounding mode from SSE mxcsr register on x86_64.
* config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
from SSE mxcsr register on x86_64.
From-SVN: r201161
Paolo Carlini [Tue, 23 Jul 2013 09:39:01 +0000 (09:39 +0000)]
random: Add back <cstdio> include.
2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/random: Add back <cstdio> include.
* src/c++11/random.cc: Don't include <cstdio> here.
From-SVN: r201160
Alexander Monakov [Tue, 23 Jul 2013 09:17:10 +0000 (13:17 +0400)]
elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
* elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
From-SVN: r201159
Alexander Monakov [Tue, 23 Jul 2013 09:12:00 +0000 (13:12 +0400)]
elf.c (backtrace_initialize): Pass elf_fileline_fn to dl_iterate_phdr callbacks.
* elf.c (backtrace_initialize): Pass elf_fileline_fn to
dl_iterate_phdr callbacks.
From-SVN: r201158
Andreas Krebbel [Tue, 23 Jul 2013 07:20:52 +0000 (07:20 +0000)]
linux-unwind.h: Use the proper dwarf to hard reg mapping for FPRs when...
2013-07-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/linux-unwind.h: Use the proper dwarf to hard reg
mapping for FPRs when creating the fallback framestate.
From-SVN: r201156
Ian Lance Taylor [Tue, 23 Jul 2013 04:42:09 +0000 (04:42 +0000)]
runtime: Ignore SIGPROF if not on a Go thread.
From-SVN: r201154
Tom Tromey [Tue, 23 Jul 2013 01:54:24 +0000 (01:54 +0000)]
c-common.h (enum rid): New constant.
2013-07-23 Tom Tromey <tromey@redhat.com>
Joseph Myers <joseph@codesourcery.com>
c-family:
* c-common.h (enum rid) <RID_GENERIC>: New constant.
* c-common.c (c_common_reswords): Add _Generic.
c:
* c-parser.c (struct c_generic_association): New.
(c_generic_association_d): New typedef.
(c_parser_generic_selection): New function.
(c_parser_postfix_expression): Handle RID_GENERIC.
testsuite:
* gcc.dg/c11-generic-1.c: New file.
* gcc.dg/c11-generic-2.c: New file.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r201153
GCC Administrator [Tue, 23 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201152
Bill Schmidt [Mon, 22 Jul 2013 23:08:44 +0000 (23:08 +0000)]
rs6000.c (rs6000_expand_vector_init): Fix endianness when selecting field to splat.
2013-07-22 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (rs6000_expand_vector_init): Fix
endianness when selecting field to splat.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201149
Eric Christopher [Mon, 22 Jul 2013 21:54:33 +0000 (21:54 +0000)]
dwarf2out.c (die_odr_checksum): New function to use CHECKSUM_ macros and ULEB128 for DIE tag.
2013-07-22 Eric Christopher <echristo@gmail.com>
* dwarf2out.c (die_odr_checksum): New function to use
CHECKSUM_ macros and ULEB128 for DIE tag.
(generate_type_signature): Use.
From-SVN: r201148
Eric Botcazou [Mon, 22 Jul 2013 21:41:44 +0000 (21:41 +0000)]
config.gcc (sparc*-*-*): Accept leon3 processor.
* config.gcc (sparc*-*-*): Accept leon3 processor.
(sparc-leon*-*): Merge with sparc*-*-* and add leon3 support.
* doc/invoke.texi (SPARC Options): Adjust -mfix-ut699 entry.
* config/sparc/sparc-opts.h (enum processor_type): Add PROCESSOR_LEON3.
* config/sparc/sparc.opt (enum processor_type): Add leon3.
(mfix-ut699): Adjust comment.
* config/sparc/sparc.h (TARGET_CPU_leon3): New define.
(CPP_CPU32_DEFAULT_SPEC): Add leon3 support.
(CPP_CPU_SPEC): Likewise.
(ASM_CPU_SPEC): Likewise.
* config/sparc/sparc.c (leon3_cost): New constant.
(sparc_option_override): Add leon3 support.
(mem_ref): New function.
(sparc_gate_work_around_errata): Return true if -mfix-ut699 is enabled.
(sparc_do_work_around_errata): Look into the instruction in the delay
slot and adjust accordingly. Add fix for the data cache nullify issues
of the UT699. Change insertion position for the NOP.
* config/sparc/leon.md (leon_fpalu, leon_fpmds, write_buf): Delete.
(leon3_load): New reservation.
(leon_store): Bump latency to 2.
(grfpu): New automaton.
(grfpu_alu): New unit.
(grfpu_ds): Likewise.
(leon_fp_alu): Adjust.
(leon_fp_mult): Delete.
(leon_fp_div): Split into leon_fp_divs and leon_fp_divd.
(leon_fp_sqrt): Split into leon_fp_sqrts and leon_fp_sqrtd.
* config/sparc/sparc.md (cpu): Add leon3.
* config/sparc/sync.md (atomic_exchangesi): Disable if -mfix-ut699.
(swapsi): Likewise.
(atomic_test_and_set): Likewise.
(ldstub): Likewise.
From-SVN: r201147
Jason Merrill [Mon, 22 Jul 2013 19:43:27 +0000 (15:43 -0400)]
re PR libstdc++/57914 (Memory leak in __cxa_thread_atexit when using thread_local)
PR libstdc++/57914
* libsupc++/atexit_thread.cc (run): Delete cleanup elts.
From-SVN: r201146
Paolo Carlini [Mon, 22 Jul 2013 19:43:21 +0000 (19:43 +0000)]
cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not tf_warning_or_error.
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not
tf_warning_or_error.
From-SVN: r201145
Mike Stump [Mon, 22 Jul 2013 18:52:01 +0000 (18:52 +0000)]
Fix typo.
From-SVN: r201144
Jürgen Urban [Mon, 22 Jul 2013 18:48:32 +0000 (18:48 +0000)]
config.gcc (mips*-*-*): Add --with-fpu support.
gcc/
2013-07-26 Jürgen Urban <JuergenUrban@gmx.de>
* config.gcc (mips*-*-*): Add --with-fpu support. Make single the
default for R5900 targets.
* config/mips/mips.h (OPTION_DEFAULT_SPECS): Handle --with-fpu.
(ISA_HAS_LDC1_SDC1): Set to false for TARGET_MIPS5900.
* config/mips/mips.c (mips_option_override): Report an error for
-march=r5900 -mhard-float -mdouble-float. Use spu_single_format
for -march=r5900 -mhard-float.
From-SVN: r201143
Tobias Burnus [Mon, 22 Jul 2013 17:59:33 +0000 (19:59 +0200)]
Really add testsuite/gfortran.dg/coarray_31.f90, which should be in commit Rev.
Really add testsuite/gfortran.dg/coarray_31.f90, which should be
in commit Rev. 201140.
From-SVN: r201142
Mike Stump [Mon, 22 Jul 2013 17:46:05 +0000 (17:46 +0000)]
Fix typos.
From-SVN: r201141
Tobias Burnus [Mon, 22 Jul 2013 17:28:56 +0000 (19:28 +0200)]
re PR fortran/57906 (Coarray components: Assignment optimized away (gfortran.dg/coarray/lib_realloc_1.f90))
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* class.c (gfc_build_class_symbol): Set coarray_comp.
* trans-array.c (structure_alloc_comps): For coarrays,
directly use the data pointer address.
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* coarray/lib_realloc_1.f90: Permit optimization.
* gfortran.dg/coarray_31.f90: New.
From-SVN: r201140
Mike Stump [Mon, 22 Jul 2013 17:23:17 +0000 (17:23 +0000)]
Fix typo.
From-SVN: r201139
Mike Stump [Mon, 22 Jul 2013 17:18:54 +0000 (17:18 +0000)]
Fix typo.
From-SVN: r201138
Tobias Burnus [Mon, 22 Jul 2013 17:02:26 +0000 (19:02 +0200)]
re PR fortran/57762 (Memory leak in gfortran.dg/class_array_7.f03 after revision 200084)
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57762
* gfortran.dg/class_array_7.f03: Fix memory leak.
From-SVN: r201137
Paolo Carlini [Mon, 22 Jul 2013 16:18:45 +0000 (16:18 +0000)]
re PR c++/52816 ([C++11] Access to private members inside decltype in the signature of a member template causes access control error)
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52816
* g++.dg/cpp0x/decltype56.C: New.
From-SVN: r201136
Kyrylo Tkachov [Mon, 22 Jul 2013 16:09:32 +0000 (16:09 +0000)]
pr53265.c: Correct line number in dg-message.
gcc/testsuite/
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.dg/pr53265.c: Correct line number in dg-message.
From-SVN: r201135
Uros Bizjak [Mon, 22 Jul 2013 15:43:20 +0000 (17:43 +0200)]
* ChangeLog: Fix whitespace.
From-SVN: r201134
Paolo Carlini [Mon, 22 Jul 2013 15:22:52 +0000 (15:22 +0000)]
re PR libstdc++/57920 ([c++11] Linux: std::random_device reads too much from /dev/urandom)
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57920
* src/c++11/random.cc (random_device::_M_getval): If possible, use
read instead of std::fread.
* include/std/random: Do not include <cstdio> unnecessarily.
From-SVN: r201133
Po-Chun Chang [Mon, 22 Jul 2013 15:20:11 +0000 (09:20 -0600)]
df-problems.c (can_move_insns_across): Exit loop once we find a non-fixed, non-global register.
* df-problems.c (can_move_insns_across): Exit loop once we
find a non-fixed, non-global register.
* ipa-pure-const.c (propagate_nothrow): Exit loop after
setting can_throw.
* omega.c (omega_eliminate_red): Break after setting red_found.
(omega_problem_has_red_equations): Similarly after setting found.
(omega_query_variable): Similarly after setting coupled.
* trans-decl.c (gfc_build_dummy_array_decl): Exit loop after
setting PACKED_PARTIAL.
From-SVN: r201132
Marek Polacek [Mon, 22 Jul 2013 13:48:04 +0000 (13:48 +0000)]
Don't include gimple.h twice.
From-SVN: r201131
Tobias Burnus [Mon, 22 Jul 2013 13:33:34 +0000 (15:33 +0200)]
trans-array.c (gfc_array_allocate): Correct memory-leak patch.
2013-07-22 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_array_allocate): Correct memory-leak patch.
From-SVN: r201129
Diego Novillo [Mon, 22 Jul 2013 13:24:07 +0000 (09:24 -0400)]
This test was failing with -m64 because it was forcing -m32
instead of asking for ilp32.
From-SVN: r201128
Kyrylo Tkachov [Mon, 22 Jul 2013 13:08:24 +0000 (13:08 +0000)]
constraints.md (Pd): Allow TARGET_THUMB instead of TARGET_THUMB1.
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/constraints.md (Pd): Allow TARGET_THUMB
instead of TARGET_THUMB1.
(Pz): New constraint.
* config/arm/arm.md (arm_addsi3): Add alternatives for 16-bit
encodings.
(compare_negsi_si): Likewise.
(compare_addsi2_op0): Likewise.
(compare_addsi2_op1): Likewise.
(addsi3_carryin_<optab>): Likewise.
(addsi3_carryin_alt2_<optab>): Likewise.
(addsi3_carryin_shift_<optab>): Disable cond_exec variant
for arm_restrict_it.
(subsi3_carryin): Likewise.
(arm_subsi3_insn): Add alternatives for 16-bit encoding.
(minmax_arithsi): Disable for arm_restrict_it.
(minmax_arithsi_non_canon): Adjust for arm_restrict_it.
(satsi_<SAT:code>): Disable cond_exec variant for arm_restrict_it.
(satsi_<SAT:code>_shift): Likewise.
(arm_shiftsi3): Add alternative for 16-bit encoding.
(arm32_movhf): Disable for arm_restrict_it.
(arm_cmpdi_unsigned): Add alternatives for 16-bit encoding.
(arm_movtas_ze): Disable cond_exec variant for arm_restrict_it.
From-SVN: r201126
Tobias Burnus [Mon, 22 Jul 2013 13:03:50 +0000 (15:03 +0200)]
trans-array.c (gfc_array_allocate, [...]): Plug memory leak.
2013-07-22 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_array_allocate,
gfc_trans_deferred_array): Plug memory leak.
From-SVN: r201125
Sofiane Naci [Mon, 22 Jul 2013 12:39:18 +0000 (12:39 +0000)]
arm.md (attribute "insn"): Delete.
* config/arm/arm.md (attribute "insn"): Delete.
(attribute "type"): Add "mov_imm", "mov_reg", "mov_shift",
"mov_shift_reg", "mvn_imm", "mvn_reg", "mvn_shift" and "mvn_shift_reg".
(not_shiftsi): Update for attribute change.
(not_shiftsi_compare0): Likewise.
(not_shiftsi_compare0_scratch): Likewise.
(arm_one_cmplsi2): Likewise.
(thumb1_one_cmplsi2): Likewise.
(notsi_compare0): Likewise.
(notsi_compare0_scratch): Likewise.
(thumb1_movdi_insn): Likewise.
(arm_movsi_insn): Likewise.
(movhi_insn_arch4): Likewise.
(movhi_bytes): Likewise.
(arm_movqi_insn): Likewise.
(thumb1_movqi_insn): Likewise.
(arm32_movhf): Likewise.
(thumb1_movhf): Likewise.
(arm_movsf_soft_insn): Likewise.
(thumb1_movsf_insn): Likewise.
(thumb_movdf_insn): Likewise.
(movsicc_insn): Likewise.
(movsfcc_soft_insn): Likewise.
(and_scc): Likewise.
(cond_move): Likewise.
(if_move_not): Likewise.
(if_not_move): Likewise.
(if_shift_move): Likewise.
(if_move_shift): Likewise.
(if_shift_shift): Likewise.
(if_not_arith): Likewise.
(if_arith_not): Likewise.
(cond_move_not): Likewise.
* config/arm/neon.md (neon_mov<mode>): Update for attribute change.
(neon_mov<mode>): Likewise.
* config/arm/vfp.md (arm_movsi_vfp): Update for attribute change.
(thumb2_movsi_vfp): Likewise.
(movsf_vfp): Likewise.
(thumb2_movsf_vfp): Likewise.
* config/arm/arm.c (xscale_sched_adjust_cost): Update for attribute change.
(cortexa7_older_only): Likewise.
(cortexa7_younger): Likewise.
* config/arm/arm1020e.md (1020alu_op): Update for attribute change.
(1020alu_shift_op): Likewise.
(1020alu_shift_reg_op): Likewise.
* config/arm/arm1026ejs.md (alu_op): Update for attribute change.
(alu_shift_op): Likewise.
(alu_shift_reg_op): Likewise.
* config/arm/arm1136jfs.md (11_alu_op): Update for attribute change.
(11_alu_shift_op): Likewise.
(11_alu_shift_reg_op): Likewise.
* config/arm/arm926ejs.md (9_alu_op): Update for attribute change.
(9_alu_shift_reg_op): Likewise.
* config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute change.
(cortex_a15_alu_shift): Likewise.
(cortex_a15_alu_shift_reg): Likewise.
* config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute change.
(cortex_a5_alu_shift): Likewise.
* config/arm/cortex-a53.md (cortex_a53_alu): Update for attribute change.
(cortex_a53_alu_shift): Likewise.
* config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute change.
(cortex_a7_alu_reg): Likewise.
(cortex_a7_alu_shift): Likewise.
* config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute change.
(cortex_a8_alu_shift): Likewise.
(cortex_a8_alu_shift_reg): Likewise.
(cortex_a8_mov): Likewise.
* config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute change.
(cortex_a9_dp_shift): Likewise.
* config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute change.
* config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute change.
(cortex_r4_mov): Likewise.
(cortex_r4_alu_shift): Likewise.
(cortex_r4_alu_shift_reg): Likewise.
* config/arm/fa526.md (526_alu_op): Update for attribute change.
(526_alu_shift_op): Likewise.
* config/arm/fa606te.md (606te_alu_op): Update for attribute change.
* config/arm/fa626te.md (626te_alu_op): Update for attribute change.
(626te_alu_shift_op): Likewise.
* config/arm/fa726te.md (726te_shift_op): Update for attribute change.
(726te_alu_op): Likewise.
(726te_alu_shift_op): Likewise.
(726te_alu_shift_reg_op): Likewise.
* config/arm/fmp626.md (mp626_alu_op): Update for attribute change.
(mp626_alu_shift_op): Likewise.
* config/arm/marvell-pj4.md (pj4_alu_e1): Update for attribute change.
(pj4_alu_e1_conds): Likewise.
(pj4_alu): Likewise.
(pj4_alu_conds): Likewise.
(pj4_shift): Likewise.
(pj4_shift_conds): Likewise.
(pj4_alu_shift): Likewise.
(pj4_alu_shift_conds): Likewise.
From-SVN: r201124
Georg-Johann Lay [Mon, 22 Jul 2013 11:22:25 +0000 (11:22 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.c-torture/execute/pr57124.x: Skip int16 platforms.
* gcc.c-torture/execute/pr53366-1.x: New: Skip int16 platforms.
From-SVN: r201123
Kyrylo Tkachov [Mon, 22 Jul 2013 10:47:26 +0000 (10:47 +0000)]
predicates.md (shiftable_operator_strict_it): New predicate.
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/predicates.md (shiftable_operator_strict_it):
New predicate.
* config/arm/thumb2.md (thumb_andsi_not_shiftsi_si):
Disable cond_exec version for arm_restrict_it.
(thumb2_smaxsi3): Convert to generate cond_exec.
(thumb2_sminsi3): Likewise.
(thumb32_umaxsi3): Likewise.
(thumb2_uminsi3): Likewise.
(thumb2_abssi2): Adjust constraints for arm_restrict_it.
(thumb2_neg_abssi2): Likewise.
(thumb2_mov_scc): Add alternative for 16-bit encoding.
(thumb2_movsicc_insn): Adjust alternatives.
(thumb2_mov_negscc): Disable for arm_restrict_it.
(thumb2_mov_negscc_strict_it): New pattern.
(thumb2_mov_notscc_strict_it): New pattern.
(thumb2_mov_notscc): Disable for arm_restrict_it.
(thumb2_ior_scc): Likewise.
(thumb2_ior_scc_strict_it): New pattern.
(thumb2_cond_move): Adjust for arm_restrict_it.
(thumb2_cond_arith): Disable for arm_restrict_it.
(thumb2_cond_arith_strict_it): New pattern.
(thumb2_cond_sub): Adjust for arm_restrict_it.
(thumb2_movcond): Likewise.
(thumb2_extendqisi_v6): Disable cond_exec variant for arm_restrict_it.
(thumb2_zero_extendhisi2_v6): Likewise.
(thumb2_zero_extendqisi2_v6): Likewise.
(orsi_notsi_si): Likewise.
(orsi_not_shiftsi_si): Likewise.
From-SVN: r201122
Georg-Johann Lay [Mon, 22 Jul 2013 10:18:52 +0000 (10:18 +0000)]
avr.c (avr_out_xload): No SBIS around LPM so that instruction sequence is 1 byte shorter.
* config/avr/avr.c (avr_out_xload): No SBIS around LPM so that
instruction sequence is 1 byte shorter.
From-SVN: r201121
Georg-Johann Lay [Mon, 22 Jul 2013 08:35:18 +0000 (08:35 +0000)]
re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
* gcc.c-torture/execute/pr57344-2.x: New. Skip int16.
* gcc.dg/pr53265.c: Add dg-require-effective-target size32plus.
* gcc.dg/torture/pr53366-1.c: Same.
* gcc.dg/torture/pr57381.c: Add dg-require-effective-target int32plus.
* gcc.dg/torture/pr56488.c: Same.
* gcc.dg/torture/pr57584.c: Same.
* gcc.dg/tree-ssa/pr57385.c: Same.
* gcc.dg/pr57154.c: Add dg-require-effective-target scheduling.
From-SVN: r201119
Uros Bizjak [Mon, 22 Jul 2013 08:27:25 +0000 (10:27 +0200)]
i386.md (nonlocal_goto_receiver): Delete insn if it is not needed after split.
gcc/
2013-07-22 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (nonlocal_goto_receiver): Delete insn if
it is not needed after split.
From-SVN: r201118
Jonathan Wakely [Mon, 22 Jul 2013 07:57:53 +0000 (08:57 +0100)]
Remove stray blank line.
From-SVN: r201117
GCC Administrator [Mon, 22 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201116
Tim Shen [Sun, 21 Jul 2013 23:34:02 +0000 (23:34 +0000)]
Partially implement regex_search.
2013-07-21 Tim Shen <timshen91@gmail.com>
Partially implement regex_search.
* include/bits/regex.h: regex_search.
* include/bits/regex_grep_matcher.h: _M_search_from_first.
* include/bits/regex_grep_matcher.tcc: Implement it.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
From-SVN: r201113
Jonathan Wakely [Sun, 21 Jul 2013 19:21:03 +0000 (19:21 +0000)]
re PR libstdc++/54352 (relaxed data race rules for ~condition_variable_any)
PR libstdc++/54352
* include/std/condition_variable (condition_variable_any): Move into
inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
* src/c++11/condition_variable.cc (condition_variable_any): Move
definitions to ...
* src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
* src/Makefile.am: Add new source file.
* src/Makefile.in: Regenerate.
From-SVN: r201112
Ondřej Bílka [Sun, 21 Jul 2013 18:40:33 +0000 (18:40 +0000)]
gigi.h: Likewise.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* gcc-interface/gigi.h: Likewise.
* gcc-interface/trans.c: Likewise.
* gcc-interface/utils2.c: Likewise.
* gnat_rm.texi: Likewise.
* gnat_ugn.texi: Likewise.
* raise-gcc.c: Likewise.
* sigtramp-ppcvxw.c: Likewise.
* sysdep.c: Likewise.
* terminals.c: Likewise.
From-SVN: r201111
Ondřej Bílka [Sun, 21 Jul 2013 18:31:07 +0000 (18:31 +0000)]
Fix typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* c-common.c: Fix typos.
* c-common.h: Likewise.
From-SVN: r201110
Ondřej Bílka [Sun, 21 Jul 2013 18:18:04 +0000 (18:18 +0000)]
Fix typos.
From-SVN: r201109
Mike Stump [Sun, 21 Jul 2013 18:04:43 +0000 (18:04 +0000)]
Fix typos.
From-SVN: r201108
Ondřej Bílka [Sun, 21 Jul 2013 17:57:23 +0000 (19:57 +0200)]
trans-decl.c: Fix comment typos.
2013-07-21 Ondřej Bílka <neleai@seznam.cz>
* trans-decl.c: Fix comment typos.
* trans-expr.c: Ditto.
2013-07-21 Ondřej Bílka <neleai@seznam.cz>
* io/transfer.c: Fix comment typos.
From-SVN: r201107
Ondřej Bílka [Sun, 21 Jul 2013 17:48:42 +0000 (17:48 +0000)]
class.c: Fix typos.
2013-07-21 OndÅ\99ej BÃlka <neleai@seznam.cz>
* class.c: Fix typos.
* cp-array-notation.c: Likewise.
* cp-objcp-common.c: Likewise.
* decl.c: Likewise.
* init.c: Likewise.
* mangle.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* semantics.c: Likewise.
From-SVN: r201106
Mike Stump [Sun, 21 Jul 2013 17:39:50 +0000 (17:39 +0000)]
Fix typos.
From-SVN: r201105
Mike Stump [Sun, 21 Jul 2013 17:00:56 +0000 (17:00 +0000)]
Fix.
From-SVN: r201104
Mike Stump [Sun, 21 Jul 2013 16:52:00 +0000 (16:52 +0000)]
Fix.
From-SVN: r201103
Mike Stump [Sun, 21 Jul 2013 16:48:23 +0000 (16:48 +0000)]
Fix.
From-SVN: r201102