jvdelisle [Thu, 27 Dec 2012 18:09:13 +0000 (18:09 +0000)]
2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/48976
* gfortran.h (gfc_inquire struct): Add pointer for inquire stream.
* io.c (io_tag): Add tag for inquire stream. (match_inquire_element):
Add matcher for new tag. (gfc_resolve_inquire): Resolve new tag.
* ioparm.def: Add new parameter for inquire stream.
* trans-io.c (gfc_trans_inquire): Add tranlste code for inquire
stream.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194734
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 27 Dec 2012 18:07:33 +0000 (18:07 +0000)]
2012-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/48976
* io/inquire.c (inquire_via_unit): Set user stream inquiry variable to
appropriate value based on unit access method. (inquire_via_filename):
Since filename is not associated with an open unit, set stream inquiry
to UNKNOWN.
* io/io.h: Define inquire stream parameters.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194733
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Thu, 27 Dec 2012 17:53:17 +0000 (17:53 +0000)]
* config/rs6000/rs6000.c (rs6000_deligitimze_address): Do not
delegitimize TLS addresses on AIX.
(rs6000_legitimize_tls_address_aix): Append TLS symbol qualifier.
Set SYMBOL_FLAG_LOCAL on module symbol.
(output_toc): Do not append TLS symbol qualifier here.
* config/rs6000/rs6000.md (tls_get_addr_internal): Add GPR 4 to
clobbers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194732
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Thu, 27 Dec 2012 10:04:51 +0000 (10:04 +0000)]
* target.def (supports_function_versions): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194731
138bc75d-0d04-0410-961f-
82ee72b054a4
tmsriram [Thu, 27 Dec 2012 01:58:06 +0000 (01:58 +0000)]
Before this patch, function multiversioning determines that two functions
are different by comparing the arch type and isa flags that are set
after the target string is processed. This leads to cases where the
versions become identical when the command-line target options are
altered.
This patch modifies the function version determination to
just compare the target string.
2012-12-27 Sriraman Tallam <tmsriram@google.com>
* doc/tm.texi.in (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Document
new target hook.
* doc/tm.texi: Regenerate.
* c-family/c-common.c (handle_target_attribute): Retain target attribute
for targets that support versioning.
* target.def (supports_function_versions): New hook.
* cp/class.c (add_method): Remove calls
to DECL_FUNCTION_SPECIFIC_TARGET.
* config/i386/i386.c (ix86_function_versions): Use target string
to check for function versions instead of target flags.
* (ix86_supports_function_versions): New function.
* (is_function_default_version): Check target string.
* TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS: New macro.
2012-12-27 Sriraman Tallam <tmsriram@google.com>
* testsuite/g++.dg/mv1.C: Remove target options.
* testsuite/g++.dg/mv2.C: Ditto.
* testsuite/g++.dg/mv3.C: Ditto.
* testsuite/g++.dg/mv4.C: Ditto.
* testsuite/g++.dg/mv5.C: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194730
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 27 Dec 2012 00:18:22 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194729
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Thu, 27 Dec 2012 00:10:14 +0000 (00:10 +0000)]
* cgraph.c (verify_cgraph_node): Don't allocate/free visited_nodes set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194726
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Wed, 26 Dec 2012 18:11:42 +0000 (18:11 +0000)]
2012-12-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/48960
* io/open.c (st_parameter_open): Assign newunit number to user
variable only if the the associated open statement is successful.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194724
138bc75d-0d04-0410-961f-
82ee72b054a4
green [Wed, 26 Dec 2012 16:28:02 +0000 (16:28 +0000)]
libffi merge
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194722
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 26 Dec 2012 00:18:54 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194721
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Tue, 25 Dec 2012 22:11:16 +0000 (22:11 +0000)]
PR fortran/55539 Fix regression in -fno-sign-zero.
libgfortran ChangeLog:
2012-12-26 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/55539
* io/write_float.def (output_float): Take into account decimal dot.
testsuite ChangeLog:
2012-12-26 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/55539
* gfortran.dg/nosigned_zero_3.f90: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194717
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Tue, 25 Dec 2012 17:57:35 +0000 (17:57 +0000)]
PR target/53789
* config/pa/pa.md (movsi): Reject expansion of TLS symbol references
after reload starts.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194714
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 25 Dec 2012 00:18:43 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194712
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 24 Dec 2012 00:18:32 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194709
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sun, 23 Dec 2012 18:43:32 +0000 (18:43 +0000)]
2012-12-23 Tobias Burnus <burnus@net-b.de>
PR fortran/54884
* module.c (write_symbol1_recursion): Set attr.public_use.
* interface.c (check_sym_interfaces, check_uop_interfaces,
gfc_check_interfaces): Remove attr.public_use code.
* resolve.c (resolve_function, resolve_variable,
resolve_typebound_procedure): Ditto.
2012-12-23 Tobias Burnus <burnus@net-b.de>
PR fortran/54884
* gfortran.dg/public_private_module_8.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194706
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 23 Dec 2012 10:01:40 +0000 (10:01 +0000)]
gcc/testsuite/
* gcc.target/mips/r10k-cache-barrier-10.c: Make a branch-likely
instruction more likely.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194705
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sun, 23 Dec 2012 09:47:31 +0000 (09:47 +0000)]
gcc/testsuite/
* gcc.target/mips/pr55315.c: Cast to long rather than int.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194704
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 23 Dec 2012 00:18:18 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194703
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 22 Dec 2012 23:27:49 +0000 (23:27 +0000)]
PR lto/54728
* cgraph.h (symtab_real_symbol_p): Drop code looking for external functions.
* lto-streamer-out.c (output_symbol_p): New function.
(produce_symtab) Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194700
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 22 Dec 2012 17:27:03 +0000 (17:27 +0000)]
2012-12-21 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* module.c (mio_component): Don't skip _hash's initializer.
* resolve.c (resolve_select_type): Add an assert.
* trans-expr.c (gfc_conv_procedure_call): Handle
INTENT(OUT) for UNLIMIT_POLY.
2012-12-21 Tobias Burnus <burnus@net-b.de>
PR fortran/55763
* gfortran.dg/unlimited_polymorphic_6.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194696
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Sat, 22 Dec 2012 01:15:33 +0000 (01:15 +0000)]
libgo: Update to revision 15193:
6fdc1974457c of master library.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194692
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 22 Dec 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194691
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 21 Dec 2012 22:31:42 +0000 (22:31 +0000)]
PR ada/53737
* sem_ch12.adb (Analyze_Associations): Do not check the legality of
actuals for RACW types if this is an internal instantiation for a formal
package with defaulted parameters.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194687
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 21 Dec 2012 22:23:23 +0000 (22:23 +0000)]
compiler: Error if name defined in both package and file blocks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194685
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 21 Dec 2012 22:13:34 +0000 (22:13 +0000)]
Fix copyright notices.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194683
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 21 Dec 2012 22:06:38 +0000 (22:06 +0000)]
2012-12-21 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55355
* tree-sra.c (type_internals_preclude_sra_p): Also check that
bit_position is small enough to fit a single HOST_WIDE_INT.
* testsuite/g++.dg/torture/pr55355.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194682
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 21 Dec 2012 21:38:11 +0000 (21:38 +0000)]
* rtlanal.c (volatile_insn_p): Delete commented out code.
(side_effects_p): Likewise.
(may_trap_p_1) <UNSPEC_VOLATILE>: Return 1 again.
* target.def (unspec_may_trap_p): Adjust comment.
* targhooks.c (default_unspec_may_trap_p): Don't handle UNSPEC_VOLATILE.
* config/ia64/ia64.c (ia64_unspec_may_trap_p): Adjust to above change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194681
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 21 Dec 2012 21:20:48 +0000 (21:20 +0000)]
2012-12-21 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55775
* lra-assigns.c (improve_inheritance): Do nothing after
LRA_MAX_INHERITANCE_PASSES pass.
* lra-constraints.c (MAX_CONSTRAINT_ITERATION_NUMBER): Rename to
LRA_MAX_CONSTRAINT_ITERATION_NUMBER. Move to lra-int.h.
(MAX_INHERITANCE_PASSES): Rename to LRA_MAX_INHERITANCE_PASSES.
Move to lra-int.h.
* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Move from
lra-constraints.c.
(LRA_MAX_INHERITANCE_PASSES): Ditto.
2012-12-21 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55775
* gcc.target/i386/pr55775.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194680
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Fri, 21 Dec 2012 20:50:48 +0000 (20:50 +0000)]
2012-12-21 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/30162
* io/unix.c (raw_tell): If the lseek is done on a
non-seekable file, return 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194679
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Fri, 21 Dec 2012 18:54:00 +0000 (18:54 +0000)]
2012-12-21 Steve Ellcey <sellcey@mips.com>
PR bootstrap/54128
* ira.c (build_insn_chain): Check only NONDEBUG instructions for
register usage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194676
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 21 Dec 2012 17:25:57 +0000 (17:25 +0000)]
* varasm.c (bss_initializer_p): Remove static.
* output.h (bss_initializer_p): Declare.
* xcoffout.c (xcoff_tbss_section_name): Define.
* xcoffout.h (xcoff_tbss_section_name): Declare.
* config/rs6000/xcoff.h (TARGET_ENCODE_SECTION_INFO): Define.
(ASM_OUTPUT_TLS_COMMON): Merge strings.
* config/rs6000/rs6000.c (tls_private_data_section): New.
(output_toc): Only output CSECT decoration for TLS.
Output appropriate CSECT for data or bss.
(rs6000_xcoff_asm_init_sections) Define tls_private_data_section.
(rs6000_xcoff_select_section): Handle TLS bss and private data.
(rs6000_xcoff_file_start): Generate xcoff_tbss_section_name.
(rs6000_xcoff_encode_section_info): Strip SYMBOL_FLAG_HAS_BLOCK_INFO
from native TLS symbols.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194675
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 21 Dec 2012 16:30:24 +0000 (16:30 +0000)]
* c-c++-common/pr43942.c: Remove XFAIL for AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194672
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 21 Dec 2012 16:25:55 +0000 (16:25 +0000)]
* gcc.c-torture/compile/pr44707.c: Do not try to assemble on AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194671
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 21 Dec 2012 16:21:53 +0000 (16:21 +0000)]
* lib/target-supports.exp (add_options_for_tls): Add -pthread for
AIX as well.
(check_effective_target_powerpc_vsx_ok): Only test VSX on AIX 7.1
and above.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194670
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Fri, 21 Dec 2012 15:59:27 +0000 (15:59 +0000)]
PR bootstrap/54659
compiler: Don't include <gmp.h>, now included by go-system.h.
* go-system.h: Don't include <cstdio>.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194669
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 21 Dec 2012 15:55:52 +0000 (15:55 +0000)]
* gcc.dg/pthread-init-2.c (dg-options): Define _XOPEN_SOURCE=500
on AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194668
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 21 Dec 2012 14:33:59 +0000 (14:33 +0000)]
2012-12-21 Richard Biener <rguenther@suse.de>
PR rtl-optimization/52996
* cprop.c (bypass_block): When loops are to be preserved
do not bypass loop headers. Revert earlier kludge to remove
loops when doing that.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194666
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 21 Dec 2012 14:33:13 +0000 (14:33 +0000)]
2012-12-21 Richard Biener <rguenther@suse.de>
PR bootstrap/54659
* system.h: Include gmp.h.
* tree-ssa-loop-niter.c: Do not include gmp.h here.
* double-int.h: Likewise.
* realmpfr.h: Likewise.
fortran/
* gfortran.h: Do not include gmp.h here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194665
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Fri, 21 Dec 2012 14:29:34 +0000 (14:29 +0000)]
2012-12-21 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55763
* match.c (select_type_set_tmp): Return is a derived type or
class typespec has no derived type.
* resolve.c (resolve_fl_var_and_proc): Exclude select type
temporaries from 'pointer'.
(resolve_symbol): Exclude select type temporaries from tests
for assumed size and assumed rank.
2012-12-21 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55763
* gfortran.dg/unlimited_polymorphic_4.f03: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194663
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 21 Dec 2012 12:32:31 +0000 (12:32 +0000)]
* adaint.c: Move directive around.
* argv.c: Likewise.
* cio.c: Likewise.
* cstreams.c: Likewise.
* env.c: Likewise.
* exit.c: Likewise.
* init.c: Likewise.
* initialize.c: Likewise.
* raise.c: Likewise.
* seh_init.c: Likewise.
* targext.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194660
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 21 Dec 2012 10:32:43 +0000 (10:32 +0000)]
2012-12-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/52996
* gcc.dg/torture/pr52996.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194659
138bc75d-0d04-0410-961f-
82ee72b054a4
ktietz [Fri, 21 Dec 2012 10:12:48 +0000 (10:12 +0000)]
* config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64
abi is used.
* config/os/mingw32-w64/os_defines.h: Likewise.
* libsupc++/cxxabi.h (__base_class_type_info): Adjust
type of __offset_flags for llp64.
* libsupc++/eh_alloc.cc (EMERGENCY_OBJ_SIZE): Define proper
for llp64 abi.
(EMERGENCY_OBJ_COUNT): Likewise.
(bitmask_type): Likewise.
* libsupc++/hash_bytes.cc (_Hash_bytes): Handle llp64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194658
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Fri, 21 Dec 2012 09:49:58 +0000 (09:49 +0000)]
gcc/
2012-12-21 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/cortex-a7.md: New file.
* config/arm/t-arm (MD_INCLUDES): Add cortex-a7.md.
* config/arm/arm.md: Include cortex-a7.md.
(generic_sched): Don't use generic scheduler for Cortex-A7.
(generic_vfp): Likewise.
* config/arm/arm.c: (TARGET_SCHED_REORDER): Use arm_sched_reorder.
(arm_sched_reorder,cortexa7_sched_reorder): New function.
(cortexa7_older_only,cortexa7_younger): Likewise.
(arm_issue_rate): Add Cortex-A7.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194656
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 21 Dec 2012 00:18:30 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194655
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 20 Dec 2012 22:19:57 +0000 (22:19 +0000)]
* gthr.h (__gthread_cond_timedwait_recursive): Do not require.
* gthr-posix.h (__gthread_cond_timedwait_recursive): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194652
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 20 Dec 2012 21:02:33 +0000 (21:02 +0000)]
* include/std/functional (_Require): Move to ...
* include/std/type_traits (_Require): ... here.
* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
Handle unique_ptr for arrays or with custom pointer types.
(__shared_ptr::__shared_ptr(unique_ptr<_Tp1, _Del>&&): Likewise.
* include/bits/unique_ptr.h (unique_ptr<_Tp[], _Dp>): Use
_Dp::pointer if defined. Implement proposed resolution of LWG 2118.
* testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: New.
* testsuite/20_util/unique_ptr/assign/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/cons/array_convertible_neg.cc: New.
* testsuite/20_util/unique_ptr/cons/convertible_neg.cc: New.
* testsuite/20_util/unique_ptr/cons/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: New.
* testsuite/20_util/unique_ptr/requirements/pointer_type_array.cc: New.
* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Adjust comments.
* testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc:
Likewise.
* testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Likewise.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line number.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/default_delete/48631_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
dg-error text.
* testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Use
different instantiations so static_assert fails for each.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194651
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Thu, 20 Dec 2012 19:17:53 +0000 (19:17 +0000)]
2012-12-20 Matthias Klose <doko@ubuntu.com>
* Makefile.def (install-target-libgfortran): Depend on
install-target-libquadmath, install-target-libgcc.
(install-target-libsanitizer): Depend on install-target-libgcc.
(install-target-libjava): Depend on install-target-libgcc.
(install-target-libitm): Depend on install-target-libgcc.
(install-target-libobjc): Depend on install-target-libgcc.
(install-target-libstdc++-v3): Depend on install-target-libgcc.
* Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194650
138bc75d-0d04-0410-961f-
82ee72b054a4
ibolton [Thu, 20 Dec 2012 19:13:21 +0000 (19:13 +0000)]
Make zero_extends explicit for common AArch64 SI mode patterns
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194649
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 20 Dec 2012 18:15:13 +0000 (18:15 +0000)]
2012-12-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/36044
* gfortran.h (gfc_isym_id): Add GFC_ISYM_BACKTRACE.
* intrinsic.c (add_subroutines): Add "backtrace".
* intrinsic.texi (BACKTRACE): Document BACKTRACE intrinsic.
2012-12-20 Janus Weil <janus@gcc.gnu.org>
PR fortran/36044
* gfortran.map: Add _gfortran_backtrace.
* libgfortran.h: Rename 'show_backtrace' and export.
* runtime/backtrace.c (show_backtrace): Rename to 'backtrace'.
Don't show message. Close file descriptor. Export.
* runtime/compile_options.c (backtrace_handler): Renamed
'show_backtrace'. Move message outside.
* runtime/error.c (sys_abort): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194648
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 20 Dec 2012 18:13:56 +0000 (18:13 +0000)]
PR middle-end/55750
* gimplify.c (gimplify_self_mod_expr): Don't force lvalue to
pass is_gimple_min_lval.
* gcc.c-torture/execute/pr55750.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194647
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:05:26 +0000 (18:05 +0000)]
s390: Generate rnsbg
* config/s390/s390.md (*insv_rnsbg_noshift, *insv_rnsbg_srl): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194646
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:05:19 +0000 (18:05 +0000)]
s390: Generate rxsbg, and shifted forms of rosbg
* config/s390/s390.md (IXOR): New code iterator.
(*r<IXOR>sbg_<GPR>_noshift): Rename from *insv<GPR>_or_z10_noshift;
macro-ize to handle XOR too.
(*r<IXOR>sbg_di_rotl, *r<IXOR>sbg_<GPR>_srl, *r<IXOR>sbg_<GPR>_sll):
New patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194645
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:05:11 +0000 (18:05 +0000)]
s390: Implement extzv for z10
* config/s390/predicates.md (nonzero_shift_count_operand): New.
* config/s390/s390-protos.h (s390_extzv_shift_ok): Declare.
* config/s390/s390.c (s390_extzv_shift_ok): New function.
* config/s390/s390.md (extzv): New expander.
(*extzv<GPR>_zEC12, *extzv<GPR>_z10): New insns.
(*pre_z10_extzv<GPR>): Rename from *extzv<GPR>; simplify with
nonzero_shift_count_operand.
(*extzv_<mode>_srl, *extzv_<mode>_sll): New insns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194644
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:05:03 +0000 (18:05 +0000)]
s390: Add mode attribute for mode bitsize
* config/s390/s390.md (bitsize): New mode attr.
(*extzv<GPR>, *extzv<GPR>, *insv<GPR>_zEC12, *insv<GPR>_z10): Use it.
(extend<HQI><DSI>2, zero_extend<HQI>si2): Likewise.
(zero_extend<HQI>di2, fixuns_trunc<BFP><GPR>2): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194643
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:04:56 +0000 (18:04 +0000)]
s390: Use risbgz for AND
* config/s390/s390.md (*anddi3_cc): Add risbg alternative.
(*anddi3_cconly, *anddi3): Likewise.
(*andsi3, *andsi3_cconly, *andsi3_zarch): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194642
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:04:49 +0000 (18:04 +0000)]
s390: Only use lhs zero_extract in word_mode
* config/s390/s390.md (*insv_l_di_reg_extimm): Un-macroize from :P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194641
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Thu, 20 Dec 2012 18:04:41 +0000 (18:04 +0000)]
s390: Constraints, predicates, and op letters for contiguous bitmasks
* config/s390/constraints.md (NxxDq, NxxSq): New.
* config/s390/predicates.md (contiguous_bitmask_operand): New.
* config/s390/s390.c (print_operand) ['e', 'f', 's', 't']: New
operand letters.
* config/s390/s390.md (bfstart, bfend): New mode attrs.
(*insv<GPR>_zEC12_noshift): Use them.
(*insv<GPR>_z10_noshift): Likewise.
(*insv<GPR>_or_z10_noshift): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194640
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Thu, 20 Dec 2012 18:03:37 +0000 (18:03 +0000)]
2012-12-20 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/same_type_as_1.f03: Correct for improved message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194639
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Thu, 20 Dec 2012 15:57:18 +0000 (15:57 +0000)]
PR bootstrap/55202
* configure.ac <PLUGIN_LD_SUFFIX>: Use POSIX shell syntax.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194637
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Thu, 20 Dec 2012 15:20:06 +0000 (15:20 +0000)]
2012-12-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR target/55754
* config/arm/arm.c (arm_canonicalize_comparison): Remove
op0_preserve_value check for zero_extend to and transformation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194636
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 20 Dec 2012 14:36:56 +0000 (14:36 +0000)]
PR libstdc++/55741
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Check for Sleep.
* config.h.in: Regenerate.
* configure: Regenerate.
* src/c++11/thread.cc (__sleep_for): Use Sleep if available.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194635
138bc75d-0d04-0410-961f-
82ee72b054a4
tejohnson [Thu, 20 Dec 2012 14:31:09 +0000 (14:31 +0000)]
Fix PR gcov-profile/55734 by using methods from hwint.c instead of
builtins, to handle non-GCC and older versions of GCC. When building
libgcov.a, however, hwint.c is not available, but we are always using
the bootstrapped compiler and can therefore use the builtins.
Use __builtin_popcount instead of __builtin_popcountll, since we
are operating on an int.
Use floor_log2 directly, instead of clz_hwi for the non-libgcov case,
and handle situations where the size of the gcov_type is bigger than
HOST_WIDE_INT. Verified that the various cases compiled by forcing
different HOST_BITS_PER_WIDE_INT values.
2012-12-20 Teresa Johnson <tejohnson@google.com>
Jakub Jelinek <jakub@redhat.com>
PR gcov-profile/55734
* gcov-io.c (gcov_read_summary): Use __builtin_popcount instead
of __builtin_popcountll when building libgcov.a, otherwise use
popcount_hwi.
(gcov_histo_index): When not building libgcov.a, use floor_log2
instead of __builtin_clzll.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194634
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 20 Dec 2012 12:45:48 +0000 (12:45 +0000)]
2012-12-20 Richard Biener <rguenther@suse.de>
PR middle-end/55740
* cfghooks.c (merge_blocks): Properly handle merging of
two loop headers.
* g++.dg/torture/pr55740.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194633
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 20 Dec 2012 10:41:47 +0000 (10:41 +0000)]
PR c++/55619
* c-parser.c (c_parser_asm_operands): Remove CONVERT_P
argument, don't call default_function_array_conversion
nor c_fully_fold here.
(c_parser_asm_statement): Adjust callers.
* c-typeck.c (build_asm_expr): Call c_fully_fold on inputs
and outputs here, and call default_function_array_conversion
on inputs that don't need to be addressable.
* c-c++-common/pr55619.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194631
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 20 Dec 2012 10:40:26 +0000 (10:40 +0000)]
PR c/39464
* c-typeck.c (convert_for_assignment): For -Wpointer-sign
warning require that both c_common_unsigned_type as well as
c_common_signed_type is the same for both mvl and mvr types.
* gcc.dg/pr39464.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194630
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Thu, 20 Dec 2012 09:57:34 +0000 (09:57 +0000)]
2012-12-20 Roland Stigge <stigge@debian.org>
Matthias Klose <doko@ubuntu.com>
* config/rs6000/t-spe (MULTIARCH_DIRNAME): Remove.
* config/rs6000/t-linux (MULTIARCH_DIRNAME): Define name for
powerpc-linux-gnuspe.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194629
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 20 Dec 2012 08:13:21 +0000 (08:13 +0000)]
2012-12-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54818
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Ensure that
the string length is of type gfc_charlen_type_node.
2012-12-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54818
* gfortran.dg/transfer_intrinsic_4.f: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194628
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Thu, 20 Dec 2012 00:23:40 +0000 (00:23 +0000)]
2012-12-19 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/unlimited_polymorphic_2.f03: Remove bad test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194626
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 20 Dec 2012 00:18:51 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194625
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Thu, 20 Dec 2012 00:15:00 +0000 (00:15 +0000)]
2012-12-19 Paul Thomas <pault@gcc.gnu.org>
* array.c (resolve_array_list): Apply C4106.
* check.c (gfc_check_same_type_as): Exclude polymorphic
entities from check for extensible types. Improved error
for disallowed argument types to name the offending type.
* class.c : Update copyright date.
(gfc_class_null_initializer): Add argument for initialization
expression and deal with unlimited polymorphic typespecs.
(get_unique_type_string): Give unlimited polymorphic
entities a type string.
(gfc_intrinsic_hash_value): New function.
(gfc_build_class_symbol): Incorporate unlimited polymorphic
entities.
(gfc_find_derived_vtab): Deal with unlimited polymorphic
entities.
(gfc_find_intrinsic_vtab): New function.
* decl.c (gfc_match_decl_type_spec): Match typespec for
unlimited polymorphic type.
(gfc_match_data_decl): Skip to 'ok' if unlimited polymorphic.
expr.c (gfc_check_pointer_assign): Apply C717. If unlimited
polymorphic lvalue, find rvalue vtable for all typespecs,
except unlimited polymorphic expressions.
(gfc_check_vardef_context): Handle unlimited polymorphic
entities.
* gfortran.h : Add unlimited polymorphic attribute. Add
second arg to gfc_class_null_initializer primitive and
primitive for gfc_find_intrinsic_vtab. Add UNLIMITED_POLY
to detect unlimited polymorphic expressions.
* interface.c (gfc_compare_types): If expr1 is unlimited
polymorphic, always return 1. If expr2 is unlimited polymorphic
enforce C717.
(gfc_compare_interfaces): Skip past conditions that do not
apply for unlimited polymorphic entities.
(compare_parameter): Make sure that an unlimited polymorphic,
allocatable or pointer, formal argument is matched by an
unlimited polymorphic actual argument.
(compare_actual_formal): Ensure that an intrinsic vtable exists
to match an unlimited polymorphic formal argument.
* match.c (gfc_match_allocate): Type kind parameter does not
need to match an unlimited polymorphic allocate-object.
(alloc_opt_list): An unlimited polymorphic allocate-object
requires a typespec or a SOURCE tag.
(select_intrinsic_set_tmp): New function.
(select_type_set_tmp): Call new function. If it returns NULL,
build a derived type or class temporary instead.
(gfc_match_type_is): Remove restriction to derived types only.
Bind(C) or sequence derived types not permitted.
* misc (gfc_typename): Printed CLASS(*) for unlimited
polymorphism.
* module.c : Add AB_UNLIMITED_POLY to pass unlimited
polymorphic attribute to and from modules.
* resolve.c (resolve_common_vars): Unlimited polymorphic
entities cannot appear in common blocks.
(resolve_deallocate_expr): Deallocate unlimited polymorphic
enities.
(resolve_allocate_expr): Likewise for allocation. Make sure
vtable exists.
(gfc_type_is_extensible): Unlimited polymorphic entities are
not extensible.
(resolve_select_type): Handle unlimited polymorphic selectors.
Ensure that length type parameters are assumed and that names
for intrinsic types are generated.
(resolve_fl_var_and_proc): Exclude select type temporaries
from test of extensibility of type.
(resolve_fl_variable): Likewise for test that assumed character
length must be a dummy or a parameter.
(resolve_fl_derived0): Return SUCCESS unconditionally for
unlimited polymorphic entities. Also, allow unlimited
polymorphic components.
(resolve_fl_derived): Return SUCCESS unconditionally for
unlimited polymorphic entities.
(resolve_symbol): Return early with unlimited polymorphic
entities.
* simplifiy.c : Update copyright year.
(gfc_simplify_extends_type_of): No simplification possible
for unlimited polymorphic arguments.
* symbol.c (gfc_use_derived): Nothing to do for unlimited
polymorphic "derived type".
(gfc_type_compatible): Return unity if ts1 is unlimited
polymorphic.
* trans-decl.c (create_function_arglist) Formal arguments
without a character length should be treated in the same way
as passed lengths.
(gfc_trans_deferred_vars): Nullify the vptr of unlimited
polymorphic pointers. Avoid unlimited polymorphic entities
triggering gcc_unreachable.
* trans-expr.c (gfc_conv_intrinsic_to_class): New function.
(gfc_trans_class_init_assign): Make indirect reference of
src.expr.
(gfc_trans_class_assign): Expression NULL of unknown type
should set NULL vptr on lhs. Treat C717 cases where lhs is
a derived type and the rhs is unlimited polymorphic.
(gfc_conv_procedure_call): Handle the conversion of a non-class
actual argument to match an unlimited polymorphic formal
argument. Suppress the passing of a character string length
in this case. Make sure that calls to the character __copy
function have two character string length arguments.
(gfc_conv_initializer): Pass the initialization expression to
gfc_class_null_initializer.
(gfc_trans_subcomponent_assign): Ditto.
(gfc_conv_structure): Move handling of _size component.
trans-intrinsic.c: (gfc_conv_same_type_as): Handle conditions
where unlimited polymorphic arguments have null vptr.
* trans-stmt.c (trans_associate_var): Correctly treat array
temporaries associated with unlimited polymorphic selectors.
Recover the overwritten dtype for the descriptor. Use the _size
field of the vptr for character string lengths.
(gfc_trans_allocate): Cope with unlimited polymorphic allocate
objects; especially with character source tags.
(reset_vptr): New function.
(gfc_trans_deallocate): Call it.
* trans-types.c (gfc_get_derived_type): Detect unlimited
polymorphic types and deal with cases where the derived type of
components is null.
* trans.c : Update copyright year.
(trans_code): Call gfc_trans_class_assign for C717 cases where
the lhs is not unlimited polymorphic.
2012-12-19 Paul Thomas <pault@gcc.gnu.org>
* intrinsics/extends_type_of.c : Return correct results for
null vptrs.
2012-12-19 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/unlimited_polymorphic_1.f03: New test.
* gfortran.dg/unlimited_polymorphic_2.f03: New test.
* gfortran.dg/unlimited_polymorphic_3.f03: New test.
* gfortran.dg/same_type_as.f03: Correct for improved message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194622
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 19 Dec 2012 23:05:49 +0000 (23:05 +0000)]
2012-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/55733
* trans-decl.c (gfc_create_string_length): Avoid setting
TREE_STATIC for automatic variables with -fno-automatic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194621
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 19 Dec 2012 22:22:36 +0000 (22:22 +0000)]
PR c++/55724
* pt.c (type_unification_real): Re-combine post-deduction loops.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194620
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 19 Dec 2012 17:03:15 +0000 (17:03 +0000)]
2012-12-19 Matthias Klose <doko@ubuntu.com>
Import GNU Classpath (
20121202).
* Regenerate class and header files.
* Regenerate auto* files.
* sources.am, gcj/javaprims.h: Regenerate.
* gnu/java/nio/FileLockImpl.java (close): New override.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194618
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 19 Dec 2012 16:39:23 +0000 (16:39 +0000)]
2012-12-19 Matthias Klose <doko@ubuntu.com>
* config/i386/t-kfreebsd (MULTIARCH_DIRNAME): Add comma to
separate arguments in make function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194617
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 19 Dec 2012 16:18:37 +0000 (16:18 +0000)]
2012-12-19 Matthias Klose <doko@ubuntu.com>
* Makefile.def (install-target-libgo): Depend on
install-target-libatomic.
* Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194616
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Wed, 19 Dec 2012 16:04:11 +0000 (16:04 +0000)]
* config/i386/i386.h (enum ix86_tune_indices): Add
X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE.
(TARGET_AVOID_MEM_OPND_FOR_CMOVE): New define.
* config/i386/i386.c (initial_ix86_tune_features)
<X86TUNE_AVOID_MEM_OPND_FOR_CMOVE>: Initialize.
* config/i386/i386.md (splitters to avoid cmove memory operands): New.
(peephole2s to avoid cmove memory operands): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194614
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 19 Dec 2012 15:53:01 +0000 (15:53 +0000)]
2012-12-19 Tobias Burnus <burnus@net-b.de>
* testsuite/libgomp.fortran/fortran.exp: Set
-fintrinsic-modules-path.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194613
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Wed, 19 Dec 2012 15:51:24 +0000 (15:51 +0000)]
gcc/
2012-12-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (f_minmaxs, f_minmaxd): New types.
* config/arm/vfp.md (smax<mode>3): New pattern.
(smin<mode>3): Likewise.
gcc/testsuite/
2012-12-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/vmaxnmdf.c: New test.
* gcc.target/arm/vmaxnmsf.c: Likewise.
* gcc.target/arm/vminnmsf.c: Likewise.
* gcc.target/arm/vminnmdf.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194612
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 19 Dec 2012 15:02:50 +0000 (15:02 +0000)]
libgomp/
2012-12-19 Tobias Burnus <burnus@net-b.de>
* testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
gcc/testsuite/
2012-12-19 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/gomp/use_intrinsic_1.f90: Moved
to libgomp/testsuite/libgomp.fortran/use_intrinsic_1.f90.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194611
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 19 Dec 2012 14:38:10 +0000 (14:38 +0000)]
2012-12-19 Richard Biener <rguenther@suse.de>
* targhooks.h (default_canonicalize_comparison): Fix prototype.
* targhooks.c (default_canonicalize_comparison): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194610
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 19 Dec 2012 13:53:18 +0000 (13:53 +0000)]
2012-12-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/55736
PR tree-optimization/55703
* gimplify.c (prune_expr_location): New function.
(unshare_expr_without_location): Likewise.
* tree.h (unshare_expr_without_location): Declare.
* ipa-prop.c (prune_expression_for_jf): Remove.
(prune_expression_for_jf_1): Likewise.
(ipa_set_jf_constant): Use unshare_expr_without_location.
(ipa_set_jf_arith_pass_through): Likewise.
(determine_known_aggregate_parts): Likewise.
* tree-switch-conversion.c (build_constructors): Use
unshare_expr_without_location on all constructor elements.
* gcc.dg/lto/pr55703_0.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194609
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Wed, 19 Dec 2012 12:39:17 +0000 (12:39 +0000)]
2012-12-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* target.def: Define canonicalize_comparison hook.
* targhooks.h (default_canonicalize_comparison): New prototype.
* targhooks.c (default_canonicalize_comparison): New function.
* doc/tm.texi: Add documentation for the new target hook.
* doc/tm.texi.in: Likewise.
* combine.c (try_combine): Adjust to use the target hook.
* config/alpha/alpha.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/alpha/alpha.c (alpha_canonicalize_comparison): New
function.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/arm/arm-protos.h (arm_canonicalize_comparison): Remove
prototype.
* config/arm/arm.c (arm_canonicalize_comparison): Add new
parameter.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/arm/arm.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/s390/s390-protos.h (s390_canonicalize_comparison): Remove
prototype.
* config/s390/s390.c (s390_canonicalize_comparison): Add new
parameter.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/s390/s390.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/sh/sh-protos.h (sh_canonicalize_comparison): Remove
prototype.
* config/sh/sh.c (sh_canonicalize_comparison): Add new prototype. New
function overloading the old one.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/sh/sh.h (CANONICALIZE_COMPARISON): Remove macro
definition.
* config/spu/spu.c (spu_canonicalize_comparison): New function.
(TARGET_CANONICALIZE_COMPARISON): New macro definition.
* config/spu/spu.h (CANONICALIZE_COMPARISON): Remove macro
definition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194608
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Wed, 19 Dec 2012 12:16:56 +0000 (12:16 +0000)]
PR debug/55730
* dwarf2out.c (mem_loc_descriptor): Ignore CLOBBER.
* valtrack.c (gen_lowpart_for_debug): New function.
(propagate_for_debug): Temporarily set rtl_hooks.gen_lowpart_no_emit
to gen_lowpart_for_debug.
* gcc.dg/debug/pr55730.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194607
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Wed, 19 Dec 2012 11:42:30 +0000 (11:42 +0000)]
PR tree-optimization/55683
* g++.dg/ipa/devirt-9.C: New testcase.
* ipa-prop.c (try_make_edge_direct_virtual_call): Look into constants for binfo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194606
138bc75d-0d04-0410-961f-
82ee72b054a4
xguo [Wed, 19 Dec 2012 11:40:52 +0000 (11:40 +0000)]
gcc/ChangeLog:
2012-12-19 Terry Guo <terry.guo@arm.com>
* config/arm/arm.c (thumb_find_work_register): Check argument
register number based on current PCS.
gcc/testsuite/ChangeLog:
2012-12-19 Terry Guo <terry.guo@arm.com>
* gcc.target/arm/thumb-find-work-register.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194605
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Wed, 19 Dec 2012 09:21:17 +0000 (09:21 +0000)]
2012-12-19 Tobias Burnus <burnus@net-b.de>
Jakub Jelinek <jakub@redhat.com>
Janus Weil <janus@gcc.gnu.org>
PR fortran/55636
PR fortran/55733
* gfortran.h (GFC_PREFIX): Define.
* trans-decl.c (gfc_create_string_length): For VAR_DECLs that
will be TREE_STATIC, use GFC_PREFIX to mangle the names. Handle
-fno-automatic
(gfc_trans_deferred_vars): Don't free variables SAVEd via
-fno-automatic.
2012-12-19 Tobias Burnus <burnus@net-b.de>
PR fortran/55733
* gfortran.dg/save_5.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194604
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 19 Dec 2012 00:18:34 +0000 (00:18 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194597
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 18 Dec 2012 22:48:04 +0000 (22:48 +0000)]
PR c/39464
* c-typeck.c (convert_for_assignment): For -Wpointer-sign
warning require that both c_common_unsigned_type as well as
c_common_signed_type is the same for both mvl and mvr types.
* gcc.dg/pr39464.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194594
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 18 Dec 2012 22:07:38 +0000 (22:07 +0000)]
libgo: Link against libatomic_convenience.la.
gcc/go:
PR go/55201
* gospec.c: Revert last patch.
gcc/testsuite:
PR go/55201
* lib/go.exp: Revert last patch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194593
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 18 Dec 2012 22:04:08 +0000 (22:04 +0000)]
PR go/55201
* Makefile.am (noinst_LTLIBRARIES): Define new make variable.
(libatomic_convenience_la_SOURCES): Likewise.
(libatomic_convenience_la_LIBADD): Likewise.
* Makefile.in: Rebuild.
* testsuite/Makefile.in: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194592
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 18 Dec 2012 21:40:29 +0000 (21:40 +0000)]
PR target/55562
* sbitmap.c (bitmap_and, bitmap_xor, bitmap_ior): Return whether
dst sbitmap changed even if it doesn't have popcount.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194591
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Tue, 18 Dec 2012 17:46:48 +0000 (17:46 +0000)]
[AArch64] Fix warning in aarch64.md
gcc/
* config/aarch64/aarch64.md (insv_imm<mode>): Add modes
for source operands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194589
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Tue, 18 Dec 2012 17:43:25 +0000 (17:43 +0000)]
[AArch64] Fix some warnings about unused variables.
gcc/
* config/aarch64/aarch64.c (aarch64_simd_attr_length_move):
Remove unused variables.
(aarch64_split_compare_and_swap): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194588
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Tue, 18 Dec 2012 16:43:22 +0000 (16:43 +0000)]
2012-12-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/driver-arm.c (arm_cpu_table):
Add Cortex-A7.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194587
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 18 Dec 2012 16:21:57 +0000 (16:21 +0000)]
PR other/54324
* doc/install.texi (Tools/packages necessary for building GCC):
Suggest --disable-stage1-checking for older GCC's.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194586
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 18 Dec 2012 15:26:27 +0000 (15:26 +0000)]
PR other/54324
* tree-ssa-coalesce.c (struct ssa_name_var_hash): Remove "union"
from template parameter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194584
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 18 Dec 2012 15:19:43 +0000 (15:19 +0000)]
PR other/54324
* ansidecl.h (ATTRIBUTE_UNUSED): Do not set __attribute__ for GCC
< 3.4.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194583
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 18 Dec 2012 14:39:49 +0000 (14:39 +0000)]
2012-12-18 Richard Biener <rguenther@suse.de>
PR middle-end/54838
* cfgloopmanip.c (fix_loop_structure): Re-discover latch
edges first and mark loops for removal if no latch edges remain.
Properly re-create LOOPS_HAVE_FALLTHRU_PREHEADERS.
* loop-init.c (loop_optimizer_finalize): Set
LOOPS_MAY_HAVE_MULTIPLE_LATCHES.
* g++.dg/torture/pr54838.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194582
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 18 Dec 2012 14:28:24 +0000 (14:28 +0000)]
libgo: Link against libatomic.
./:
PR go/55201
* Makefile.def (all-target-libgo): Depend on all-target-libatomic.
* Makefile.in: Regenerate.
gcc/go:
PR go/55201
* gospec.c (LIBATOMIC): Define.
(LIBATOMIC_PROFILE): Define.
(lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
gcc/testsuite:
* lib/go.exp (go_link_flags): Add libatomic location to flags and
ld_library_path.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194581
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 18 Dec 2012 13:26:59 +0000 (13:26 +0000)]
2012-12-18 Richard Biener <rguenther@suse.de>
* gcc.dg/tree-ssa/reassoc-19.c: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194579
138bc75d-0d04-0410-961f-
82ee72b054a4