Alan Modra
b40c885f18
ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
...
* ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
* critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
* config/linux/mutex.h: Use atomic rather than sync builtins.
* config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
* config/linux/omp-lock.h: Comment fix.
* config/linux/arm/mutex.h: Delete.
* config/linux/powerpc/mutex.h: Delete.
* config/linux/ia64/mutex.h: Delete.
* config/linux/mips/mutex.h: Delete.
From-SVN: r181832
2011-11-30 14:32:53 +10:30
Alan Modra
3e348fccfa
re PR libgomp/51249 (semaphore implemetation for linux leaves threads blocked)
...
PR libgomp/51249
* config/linux/sem.h: Rewrite.
* config/linux/sem.c: Rewrite.
From-SVN: r181831
2011-11-30 14:13:57 +10:30
Ian Lance Taylor
b87974949f
runtime: Copy runtime_panicstring from master library.
...
From-SVN: r181830
2011-11-30 00:21:52 +00:00
GCC Administrator
a592211185
Daily bump.
...
From-SVN: r181829
2011-11-30 00:19:14 +00:00
Joseph Myers
a4f71b01d1
* config/sh/sh.h (enum reg_class, REG_CLASS_NAMES)
...
(REG_CLASS_CONTENTS): Add NON_SP_REGS.
(REGCLASS_HAS_GENERAL_REG): Handle NON_SP_REGS.
* config/sh/constraints.md (u): New constraint.
From-SVN: r181825
2011-11-29 23:37:06 +00:00
Ian Lance Taylor
b740cb6335
libgo: update to weekly.2011-10-25
...
Changes were mainly straightforward to merge.
From-SVN: r181824
2011-11-29 23:02:54 +00:00
Oleg Endo
cebc182b78
re PR target/51337 (SH Target: Various testsuite ICEs for -m2a -O0)
...
PR target/51337
* config/sh/sh.c (sh_secondary_reload): Add case when FPUL
register is being loaded from a pseudo in memory.
From-SVN: r181823
2011-11-29 22:52:55 +00:00
Ian Lance Taylor
08ee945e0b
runtime: If no sem_timedwait, use pthread_cond_timedwait.
...
From-SVN: r181821
2011-11-29 21:58:48 +00:00
DJ Delorie
85b8555ed3
.
...
* configure.ac (rl78-*-*) New case.
* configure: Regenerate.
* MAINTAINERS: Add myself as RL78 maintainer.
libgcc
* config.host (rl78-*-elf): New case.
* config/rl78: New directory for the Renesas RL78.
gcc
* config.gcc (rl78-*-elf): New case.
* doc/extend.texi: Add RL78 documentation.
* doc/invoke.texi: Likewise.
* doc/md.texi: Likewise.
* doc/contrib.texi: Add RL78.
* doc/install.texi: Add rl78-*-elf.
* config/rl78: New directory for the Renesas RL78.
contrib
* config-list.mk (LIST): Add rl78-elf.
From-SVN: r181819
2011-11-29 16:36:43 -05:00
Jakub Jelinek
c360c0fb8a
re PR tree-optimization/51247 (ICE in set_value_range, at tree-vrp.c:417)
...
PR tree-optimization/51247
* tree-vrp.c (extract_range_from_assert): For signed 1-bit precision
types instead of adding 1 subtract -1 and instead of subtracting 1
add -1 to avoid overflows.
* gcc.c-torture/compile/pr51247.c: New test.
From-SVN: r181818
2011-11-29 22:03:09 +01:00
Andreas Tobler
781c528f2e
config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.
...
2011-11-29 Andreas Tobler <andreast@fgznet.ch>
* config.rpath (ld_shlibs): Fix detection of FreeBSD-10 and up.
(libname_spec): Likewise.
* configure: Regenerate with autoconf -I ../../.
From-SVN: r181816
2011-11-29 21:12:00 +01:00
Andrew MacLeod
91f59d8bf4
re PR target/50123 (cmpxchg generated for atomic and with zero/or with -1)
...
2011-11-29 Andrew MacLeod <amacleod@redhat.com>
PR target/50123
* optabs.c (maybe_optimize_fetch_op): New. Look for more optimal
instructions for a FECTH_OP or OP_FECTH sequence.
(expand_atomic_fetch_op): Call maybe_optimize_fetch_op.
* testsuite/gcc.dg/atomic-op-optimize.c: New. Test for optimizations.
From-SVN: r181815
2011-11-29 19:42:44 +00:00
Ian Lance Taylor
421ecf992e
runtime: If O_CLOEXEC is not defined, define it as 0.
...
From-SVN: r181814
2011-11-29 19:26:00 +00:00
Sanjoy Das
8afa2bfbdc
compiler: Define and use backend-independent Location class.
...
From Sanjoy Das.
* go-location.h: New file.
* go-linemap.cc: New file.
* go-gcc.cc: Change all uses of source_location to Location.
* Make-lang.in (GO_OBJS): Add go/go-linemap.o.
(GO_LINEMAP_H): New variable.
(GO_LEX_H): Use $(GO_LINEMAP_H).
(GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
(go/go-linemap.o): New target.
Co-Authored-By: Ian Lance Taylor <iant@google.com>
From-SVN: r181813
2011-11-29 19:10:50 +00:00
Uros Bizjak
09ad58e618
sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.
...
* config/i386/sync.md (UNSPEC_LDA, UNSPEC_STA): New unspecs.
(movdi_via_fpu): Remove.
(loaddi_via_fpu): New insn pattern.
(storedi_via_fpu): Ditto.
(atomic_loaddi_fpu): Use loaddi_via_fpu and storedi_via_fpu.
(atomic_storedi_fpu): Ditto.
* reg-stack.c (get_true_reg): Handle UNSPEC_LDA.
(subst_stack_regs_pat): Handle UNSPEC_STA.
From-SVN: r181812
2011-11-29 20:03:08 +01:00
Uros Bizjak
c6b4cec7ea
i386.md (*floathi<mode>2_i387_with_temp): Do not allocate scratch memory for alternative 0.
...
* config/i386/i386.md (*floathi<mode>2_i387_with_temp): Do not
allocate scratch memory for alternative 0.
From-SVN: r181811
2011-11-29 18:55:29 +01:00
Thomas Koenig
645e511b20
re PR fortran/40958 (module files too large)
...
2011-11-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/40958
* module.c (prev_module_line): New variable.
(prev_module_column): New variable.
(prev_character): New variable.
(module_char): Update the new variables.
(module_unget_char): New function.
(parse_string): Use module_unget_char.
(parse_integer): Likewise.
(parse_name): Likewise.
From-SVN: r181810
2011-11-29 17:49:24 +00:00
Michael Meissner
7fa14a0130
Enable target specific builtins and macros when using the target attribute or pragma on rs6000
...
From-SVN: r181809
2011-11-29 17:33:05 +00:00
David Edelsohn
8f5c9d6659
tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.
...
2011-11-29 Dodji Seketeli <dodji@redhat.com>
* tree-diagnostic (struct loc_t): Rename into struct loc_map_pair.
(maybe_unwind_expanded_macro_loc): Adjust.
From-SVN: r181808
2011-11-29 11:40:50 -05:00
David Edelsohn
43042ea701
trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl if DECL_ONE_ONLY.
...
2011-11-21 David Edelsohn <dje.gcc@gmail.com>
Aldy Hernandez <aldyh@redhat.com>
* trans-mem.c (ipa_tm_create_version_alias): Mangle new_decl
if DECL_ONE_ONLY.
(ipa_tm_create_version): Same.
Co-Authored-By: Aldy Hernandez <aldyh@redhat.com>
From-SVN: r181807
2011-11-29 11:32:28 -05:00
Bernd Schmidt
89ff14c265
haifa-sched.c (recompute_todo_spec): Simplify and correct the code checking for a clobber of a condition register...
...
* haifa-sched.c (recompute_todo_spec): Simplify and correct the
code checking for a clobber of a condition register when deciding
whether to predicate.
From-SVN: r181806
2011-11-29 15:58:05 +00:00
Bernd Schmidt
4d5ae4eadc
config.host (tic6x-*-uclinux): Append to extra_parts.
...
* config.host (tic6x-*-uclinux): Append to extra_parts. Fix
formatting.
From-SVN: r181805
2011-11-29 15:55:38 +00:00
Yufeng Zhang
9645592c93
Use complex floating-point constant in CDBL.
...
2011-11-29 Yufeng Zhang <yufeng.zhang@arm.com>
Use complex floating-point constant in CDBL.
* gcc.dg/compat/compat-common.h (CDBL): Replace 1i with 1.0i.
From-SVN: r181804
2011-11-29 15:27:33 +00:00
Diego Novillo
e62acfd26f
gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
...
* gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
Update field call_stmt_cannot_inline_p from call graph edge, if
needed.
* gimple.h (gimple_call_set_cannot_inline): Move to gimple.c.
From-SVN: r181803
2011-11-29 09:16:16 -05:00
Sameera Deshpande
635a48fbd6
arm.md (arm_movdi): Update NEG_POOL_RANGE.
...
* config/arm/arm.md (arm_movdi): Update NEG_POOL_RANGE.
(movdf_soft_insn): Likewise.
* config/arm/fpa.md (thumb2_movdf_fpa): Likewise.
* config/arm/neon.md (neon_mov<mode>): Likewise.
* config/arm/vfp.md (movdi_vfp): Likewise.
(movdi_vfp_cortexa8): Likewise.
(movdf_vfp): Likewise.
From-SVN: r181802
2011-11-29 18:22:27 +05:30
Tobias Burnus
e0516b0583
re PR fortran/51306 (MOVE_ALLOC: Make more middle end friendlier)
...
2011-11-29 Tobias Burnus <burnus@net-b.de>
PR fortran/51306
PR fortran/48700
* check.c (gfc_check_move_alloc): Make sure that from/to
are both polymorphic or neither.
* trans-intrinsic.c (conv_intrinsic_move_alloc): Cleanup,
generate inline code.
2011-11-29 Tobias Burnus <burnus@net-b.de>
PR fortran/51306
PR fortran/48700
* gfortran.dg/move_alloc_5.f90: Add dg-error.
* gfortran.dg/select_type_23.f03: Add dg-error.
* gfortran.dg/move_alloc_6.f90: New.
* gfortran.dg/move_alloc_7.f90: New.
From-SVN: r181801
2011-11-29 10:57:40 +01:00
Jakub Jelinek
825298c450
re PR middle-end/50074 (gcc.dg/sibcall-6.c execution test on x86_64 with -fPIC)
...
PR middle-end/50074
* expr.c (expand_expr_addr_expr_1): Don't call force_operand for
EXPAND_SUM modifier.
From-SVN: r181800
2011-11-29 09:48:41 +01:00
François Dumont
40207762a8
hashtable.h (_Hashtable<>::_M_rehash): Remove code useless now that the hashtable implementation put the hash code in...
...
2011-11-29 François Dumont <fdumont@gcc.gnu.org>
* include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
useless now that the hashtable implementation put the hash code in
cache if the hash functor throws.
* testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
checking also distance between begin and end iterators to validate
underlying data model.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
* testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
* testsuite/23_containers/unordered_multiset/erase/2.cc: New.
* testsuite/23_containers/unordered_multimap/erase/2.cc: New.
From-SVN: r181799
2011-11-29 07:45:58 +00:00
Ian Lance Taylor
714cb9f01a
Implement predefined error interface.
...
From-SVN: r181798
2011-11-29 07:03:49 +00:00
Ira Rosen
b2a1a74d99
re PR tree-optimization/51301 (Compiler ICE in vect_is_simple_use_1)
...
PR tree-optimization/51301
* tree-vect-patterns.c (vect_recog_over_widening_pattern): Check
that the last statement doesn't convert to a bigger type than the
original type of the computation.
From-SVN: r181797
2011-11-29 07:00:53 +00:00
Richard Henderson
db4e52814d
rs6000: Streamline boolval output for compare-and-swap.
...
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap):
Handle overlap between retval and oldval. Always compute boolval
from CR0 EQ value.
From-SVN: r181796
2011-11-28 20:50:13 -08:00
Richard Henderson
20bc9eb1b8
rs6000.c (rs6000_expand_atomic_compare_and_swap): Get new pseudo for target after convert_modes.
...
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap): Get
new pseudo for target after convert_modes.
(rs6000_expand_atomic_exchange, rs6000_expand_atomic_op): Likewise.
From-SVN: r181795
2011-11-28 20:50:01 -08:00
Richard Henderson
cef86eb288
* libgomp.h (enum memmodel): New.
...
From-SVN: r181794
2011-11-28 18:19:05 -08:00
GCC Administrator
de4f64c73d
Daily bump.
...
From-SVN: r181793
2011-11-29 00:19:06 +00:00
Uros Bizjak
338a1a221b
cdce3.C: Use dg-additional-options.
...
* g++.dg/cdce3.C: Use dg-additional-options.
From-SVN: r181789
2011-11-28 23:05:46 +01:00
Jakub Jelinek
c32f25b885
re PR debug/50317 (missing DW_OP_GNU_implicit_pointer)
...
PR debug/50317
* tree-ssa.c (execute_update_addresses_taken): Remove
var ={v} {CLOBBER} stmts instead of rewriting them into
var_N ={v} {CLOBBER}.
From-SVN: r181788
2011-11-28 22:04:45 +01:00
Jakub Jelinek
d3b623c7af
re PR middle-end/50907 (EDGE_CROSSING incorrectly set across same section with -freorder-blocks-and-partition -fPIC -fprofile-use)
...
PR middle-end/50907
* function.c (convert_jumps_to_returns): When redirecting an edge
succ to EXIT_BLOCK_PTR, clear EDGE_CROSSING flag.
* gcc.dg/tree-prof/pr50907.c: New test.
From-SVN: r181787
2011-11-28 22:04:10 +01:00
Jakub Jelinek
8c29866f7f
re PR tree-optimization/50078 (combine wrong code: volatile accesses optimized out)
...
PR tree-optimization/50078
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Copy over
TREE_THIS_VOLATILE also from the old to new lhs resp. rhs.
* gcc.dg/pr50078.c: New test.
From-SVN: r181786
2011-11-28 22:03:11 +01:00
Jakub Jelinek
99d8763e19
re PR tree-optimization/50682 (ICE: SIGSEGV in main_block_label with -O2 -fnon-call-exceptions -ftracer)
...
PR tree-optimization/50682
* tree-eh.c (maybe_remove_unreachable_handlers): New function.
* tree-flow.h (maybe_remove_unreachable_handlers): New prototype.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Call it.
* g++.dg/opt/pr50682.C: New test.
From-SVN: r181785
2011-11-28 22:02:27 +01:00
Andrew MacLeod
62bad7cd05
c-family
...
* c-cpp-builtin.c (cpp_atomic_builtins):New. Emit all atomic
predefines in one place. Add LOCK_FREE predefines.
(c_cpp_builtins): Move Legacy HAVE_SYNC predefines to
new func.
libstdc++-v3
* include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp
predefined macros.
* testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER
macro checks. Check for expected compile time values.
From-SVN: r181784
2011-11-28 20:28:23 +00:00
Rainer Orth
f9c55897eb
Cleanup rs6000/t-ppccomm configurations (PR other/51022)
...
PR other/51022
* config/rs6000/t-savresfgpr: New file.
* config/rs6000/t-ppccomm (LIB2ADD_ST): Remove all but
$(srcdir)/config/rs6000/eabi.S.
* config/rs6000/t-ppccomm-ldbl: Remove.
* config.host (powerpc-*-freebsd*): Add rs6000/t-savresfgpr to
tmake_file.
(powerpc-*-eabispe*): Likewise.
(powerpc-*-eabi*): Likewise.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
(powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add rs6000/t-ppccomm
to tmake_file, remove rs6000/t-ppccomm-ldbl.
(powerpc-*-eabisimaltivec*): Remove rs6000/t-ppccomm-ldbl from
tmake_file.
(powerpc-*-eabisim*): Likewise.
(powerpc-*-elf*): Likewise.
(powerpc-*-eabialtivec*): Likewise.
(powerpc-xilinx-eabi*): Likewise.
(powerpc-*-rtems*): Likewise.
(powerpcle-*-elf*): Likewise.
(powerpcle-*-eabisim*): Likewise.
(powerpcle-*-eabi*): Likewise.
From-SVN: r181782
2011-11-28 16:02:10 +00:00
Tobias Burnus
56828a291c
Really commit the test case:
...
2011-11-28 Tobias Burnus <burnus@net-b.de>
PR fortran/51308
* gfortran.dg/iso_c_binding_compiler_4.f90: New.
From-SVN: r181779
2011-11-28 15:47:39 +01:00
Tobias Burnus
fc2a6c8982
re PR fortran/51308 (PARAMETER attribute conflicts with SAVE attribute)
...
2011-11-28 Tobias Burnus <burnus@net-b.de>
Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/51308
* symbol.c (check_conflict): Ignore BIND(C) + PARAMETER
conflicts for ISO_C_BINDING variables.
(gen_special_c_interop_ptr): Don't mark c_ptr_null/c_funptr_null
as SAVE.
2011-11-28 Tobias Burnus <burnus@net-b.de>
PR fortran/51308
* gfortran.dg/iso_c_binding_compiler_4.f90: New.
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r181778
2011-11-28 15:21:33 +01:00
Paolo Carlini
1a30353af8
re PR libstdc++/51288 ([C++0x] get_money implementation is missing the sentry object (does not skip leading whitespace))
...
2011-11-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/51288
* include/std/iomanip (get_money, put_money): Use sentry.
* testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New.
* testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
Likewise.
* testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
Likewise.
From-SVN: r181775
2011-11-28 13:24:23 +00:00
Georg-Johann Lay
49b2772e24
extend.texi (AVR Built-in Functions): Add documentation for __builtin_avr_map8 and __builtin_avr_map16.
...
* doc/extend.texi (AVR Built-in Functions): Add documentation for
__builtin_avr_map8 and __builtin_avr_map16.
* config/avr/avr.md: Document new %t and %T asm output codes.
(define_c_enum "unspec"): Add UNSPEC_MAP_BITS.
(adjust_len): Add map_bits.
(map_bitsqi, map_bitshi): New insns.
* config/avr/avr-protos.h (avr_out_map_bits): New.
* config/avr/avr-protos.c (print_operand): Implement %t and %T.
(adjust_insn_length): Handle ADJUST_LEN_MAP_BITS.
(avr_double_int_push_digit): New function.
(avr_map, avr_revert_map, avr_swap_map, avr_id_map): New functions.
(avr_sig_map, avr_map_hamming_byte): New functions.
(avr_out_swap_bits, avr_out_revert_bits, avr_move_bits,
avr_out_map_bits): New functions.
(enum avr_builtin_id): Add AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16.
(avr_init_builtins): Populate __builtin_avr_map8, __builtin_avr_map16.
(bdesc_2arg): Add __builtin_avr_map8, __builtin_avr_map16 ...
(avr_expand_builtin): ...and expand them.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in defines:
__BUILTIN_AVR_MAP8, __BUILTIN_AVR_MAP16.
From-SVN: r181773
2011-11-28 09:58:37 +00:00
Ian Lance Taylor
737087cbc8
runtime: Multiplex goroutines onto OS threads.
...
From-SVN: r181772
2011-11-28 05:45:49 +00:00
Ian Lance Taylor
a01207c473
generic-morestack.c (__splitstack_find): Check for NULL old stack value.
...
* generic-morestack.c (__splitstack_find): Check for NULL old
stack value.
(__splitstack_resetcontext): New function.
(__splitstack_releasecontext): New function.
* libgcc-std.ver.in: Add new functions to GCC_4.7.0.
From-SVN: r181771
2011-11-28 05:44:31 +00:00
GCC Administrator
8ce3007a90
Daily bump.
...
From-SVN: r181770
2011-11-28 00:19:24 +00:00
Aldy Hernandez
9cafc14fe9
trans-mem-2_0.c: Add dg-lto-do link.
...
gcc/testsuite:
2011-11-27 Aldy Hernandez <aldyh@redhat.com>
Iain Sandoe <iains@gcc.gnu.org>
* gcc.dg/lto/trans-mem-2_0.c: Add dg-lto-do link. Add dummy
functions for _ITM_registerTMCloneTable, _ITM_deregisterTMCloneTable.
* gcc.dg/lto/trans-mem-1_0.c: Add dg-lto-do link.
* gcc.dg/lto/trans-mem-1_1.c: Add dummy functions for
_ITM_registerTMCloneTable, _ITM_deregisterTMCloneTable.
Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
From-SVN: r181766
2011-11-27 14:09:13 +00:00
Iain Sandoe
2b0b8ab2a6
darwin-crt-tm.c: Correct comments, use correct licence.
...
libgcc:
* config/darwin-crt-tm.c: Correct comments, use correct licence.
From-SVN: r181765
2011-11-27 13:57:01 +00:00