]> gcc.gnu.org Git - gcc.git/log
gcc.git
11 years ago* system.h (vec_free): Undef.
David Edelsohn [Mon, 19 Nov 2012 14:47:11 +0000 (14:47 +0000)]
* system.h (vec_free): Undef.

From-SVN: r193625

11 years agore PR c++/55368 (Comma before semicolon in struct definition is not rejected)
Paolo Carlini [Mon, 19 Nov 2012 14:41:26 +0000 (14:41 +0000)]
re PR c++/55368 (Comma before semicolon in struct definition is not rejected)

/cp
2012-11-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55368
* parser.c (cp_parser_member_declaration): Emit an error in case
of stray comma at end of member declaration.

/testsuite
2012-11-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55368
* g++.dg/parse/struct-5.C: New.

From-SVN: r193624

11 years ago* class.c (one_inheriting_sig): Don't inherit base copy ctors.
Jason Merrill [Mon, 19 Nov 2012 14:05:59 +0000 (09:05 -0500)]
* class.c (one_inheriting_sig): Don't inherit base copy ctors.

From-SVN: r193623

11 years agore PR c++/55262 ([C++0x] g++.dg/cpp0x/inh-ctor10.C ICEs with -g)
Jason Merrill [Mon, 19 Nov 2012 14:05:48 +0000 (09:05 -0500)]
re PR c++/55262 ([C++0x] g++.dg/cpp0x/inh-ctor10.C ICEs with -g)

PR c++/55262
* method.c (implicitly_declare_fn): Set DECL_PARM_INDEX on
the parms of an inheriting ctor.

From-SVN: r193622

11 years agore PR c++/55261 ([C++0x] ICE (SIGSEGV) when inheriting implicit constructor)
Jason Merrill [Mon, 19 Nov 2012 14:05:36 +0000 (09:05 -0500)]
re PR c++/55261 ([C++0x] ICE (SIGSEGV) when inheriting implicit constructor)

PR c++/55261
* class.c (add_implicitly_declared_members): Use
lookup_fnfields_slot to get the base constructors.

From-SVN: r193621

11 years agore PR middle-end/54630 (GCC 4.8 --enable-languages=c build fails: Undefined symbols...
Jakub Jelinek [Mon, 19 Nov 2012 13:44:15 +0000 (14:44 +0100)]
re PR middle-end/54630 (GCC 4.8 --enable-languages=c build fails: Undefined symbols: ___cxa_guard_acquire and ___cxa_guard_release)

PR middle-end/54630
* tree-ssa-coalesce.c (coalesce_ssa_name): Remove static
keyword from ssa_name_hash var.

* class.c (fixed_type_or_null_ref_ht): New variable.
(fixed_type_or_null): Use it instead of local static ht.

From-SVN: r193620

11 years agolibtool-version: Bump soversion.
Matthias Klose [Mon, 19 Nov 2012 11:49:48 +0000 (11:49 +0000)]
libtool-version: Bump soversion.

2012-11-19  Matthias Klose  <doko@ubuntu.com>

        * libtool-version: Bump soversion.

From-SVN: r193619

11 years agomd.texi: Document define_subst.
Maxim Kuznetsov [Mon, 19 Nov 2012 10:19:20 +0000 (10:19 +0000)]
md.texi: Document define_subst.

        * doc/md.texi: Document define_subst.
        * gensupport.c (MAX_OPERANDS): New define.
        (operand_data): New.
        (match_operand_entries_in_pattern): New.
        (used_operands_numbers): New.
        (subst_true): New.
        (subst_false): New.
        (define_subst_queue): New.
        (define_subst_tail): New.
        (define_subst_attr_queue): New.
        (define_subst_attr_tail): New.
        (has_subst_attribute): New.
        (subst_pattern_match): New.
        (get_alternatives_number): New.
        (alter_output_for_subst_insn): New.
        (alter_attrs_for_subst_insn): New.
        (process_substs_on_one_elem): New.
        (subst_dup): New.
        (process_define_subst): New.
        (duplicate_alternatives): New.
        (duplicate_each_alternative): New.
        (constraints_handler_t): New typedef.
        (alter_constraints): New.
        (adjust_operands_numbers): New.
        (replace_duplicating_operands_in_pattern): New.
        (remove_from_queue): New.
        (process_rtx): Handle define_subst and define_subst_attr.
        (change_subst_attribute): New.
        (alter_predicate_for_insn): Fix formatting.
        (alter_attrs_for_insn): Likewise.
        (alter_output_for_insn): Likewise.
        (mark_operands_from_match_dup): New.
        (mark_operands_used_in_match_dup): New.
        (find_first_unused_number_of_operand): New.
        (renumerate_operands_in_pattern): New.
        (generate_match_dup): New.
        (check_define_attr_duplicates): New.
        (init_rtx_reader_args_cb): Add checking for duplicated attrs and
        processing of define_subst.
        (read_md_rtx): Handle define_subst.
        * read-rtl.c (struct subst_attr_to_iter_mapping): New.
        (substs): New global.
        (apply_subst_iterator): New.
        (bind_subst_iter_and_attr): New.
        (find_subst_iter_by_attr): New.
        (map_attr_string): Handle subst-iterators.
        (add_condition_to_rtx): Handle define_subst.
        (apply_iterators): Likewise.
        (initialize_iterators): Likewise.
        (add_define_attr_for_define_subst): New.
        (add_define_subst_attr): New.
        (read_subst_mapping): New.
        (read_rtx): Handle define_subst_attr.
        (read_rtx_code): Add subst-attributes recognition during reading of
        strings.
        * rtl.def (DEFINE_EXPAND): Add vector of attributes.
        (DEFINE_SUBST): New.
        (DEFINE_SUBST_ATTR): New.

Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r193618

11 years agore PR rtl-optimization/55315 (comparing address to constant is folded in cse)
Tom de Vries [Mon, 19 Nov 2012 09:35:54 +0000 (09:35 +0000)]
re PR rtl-optimization/55315 (comparing address to constant is folded in cse)

2012-11-19  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/55315

* gcc.target/mips/pr55315.c: New test.

From-SVN: r193617

11 years agore PR rtl-optimization/55315 (comparing address to constant is folded in cse)
Tom de Vries [Mon, 19 Nov 2012 09:35:48 +0000 (09:35 +0000)]
re PR rtl-optimization/55315 (comparing address to constant is folded in cse)

2012-11-19  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/55315

* rtlanal.c (nonzero_address_p): Don't assume a nonzero address plus a
const is a nonzero address.

From-SVN: r193616

11 years agoreflect: Fix invalid sharing in valueInterface.
Ian Lance Taylor [Mon, 19 Nov 2012 05:34:08 +0000 (05:34 +0000)]
reflect: Fix invalid sharing in valueInterface.

From-SVN: r193614

11 years agoThis patch addresses the bogus "Invocation mismatch" messages seen in parallel profil...
Teresa Johnson [Mon, 19 Nov 2012 05:20:59 +0000 (05:20 +0000)]
This patch addresses the bogus "Invocation mismatch" messages seen in parallel profiledbootstrap builds of gcc.

This patch addresses the bogus "Invocation mismatch" messages seen in parallel
profiledbootstrap builds of gcc. See PR bootstrap/55051 for a discussion of
why this is occurring and why this checking is inaccurate. Leave it in when
!GCOV_LOCKED, to warn about concurrent update issues requiring locking.

2012-11-18  Teresa Johnson  <tejohnson@google.com>

PR bootstrap/55051
* libgcov.c (gcov_exit): Remove merged program summary
comparison unless !GCOV_LOCKED.

From-SVN: r193612

11 years agoextend.texi: Use @smallexample consistently.
Sandra Loosemore [Mon, 19 Nov 2012 03:55:32 +0000 (22:55 -0500)]
extend.texi: Use @smallexample consistently.

2012-11-18  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi: Use @smallexample consistently.  Add @noindent
when continuing a sentence or paragraph past an example.  Change
tabs to spaces in examples.

From-SVN: r193611

11 years agoDaily bump.
GCC Administrator [Mon, 19 Nov 2012 00:19:24 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r193610

11 years agogcc/
Richard Sandiford [Sun, 18 Nov 2012 17:34:06 +0000 (17:34 +0000)]
gcc/
* doc/md.texi (extv@var{m}, extvmisalign@var{m}, extzv@var{m})
(extzvmisalign@var{m}, insv@var{m}, insvmisalign@var{m}): Document.
(insv, extv, extzv): Deprecate.
* optabs.def (insv_optab, extv_optab, extzv_optab)
(insvmisalign_optab, extvmisalign_optab, extzvmisalign_optab):
New optabs.
* optabs.c (get_optab_extraction_insn): New function.
(get_extraction_insn): Use it.
* config/mips/mips.md (extv): Split into...
(extvmisalign<mode>, extv<mode>): ...these new patterns.  Rename
existing extv<mode> pattern to...
(*extv<mode>): ...this.
(extzv): Split into...
(extzvmisalign<mode>, extzv<mode>): ...these new patterns.  Rename
existing extzv<mode> pattern to...
(*extzv<mode>): ...this.
(insv): Split into...
(insvmisalign<mode>, insv<mode>): ...these new patterns.  Rename
existing insv<mode> pattern to...
(*insv<mode>): ...this.  Use const_int_operand rather than
immediate_operand.
* config/mips/mips.c (mips_block_move_straight): Use set_mem_size
to set the size of BLKmode accesses.
(mips_get_unaligned_mem): Require OP0 to be a BLKmode memory,
turning it from an "rtx *" to an rtx.
(mips_expand_ext_as_unaligned_load): Simplify for new optab
interface.  Update call to mips_get_unaligned_mem.
(mips_expand_ins_as_unaligned_store): Update call to
mips_get_unaligned_mem.

From-SVN: r193606

11 years agoMakefile.in (recog.o): Add insn-codes.h.
Richard Sandiford [Sun, 18 Nov 2012 17:33:38 +0000 (17:33 +0000)]
Makefile.in (recog.o): Add insn-codes.h.

gcc/
* Makefile.in (recog.o): Add insn-codes.h.
* expr.h (extraction_pattern): Move to optabs.h.
(mode_for_extraction): Delete.
* optabs.h (extraction_insn): New structure.
(extraction_pattern): Moved from expr.h.
(get_best_reg_extraction_insn, get_best_mem_extraction_insn): Declare.
* optabs.c (HAVE_insv, CODE_FOR_insv, HAVE_extv, CODE_FOR_extv)
(HAVE_extzv, CODE_FOR_extzv): Provide defaults.
(extraction_type): New enum.
(get_traditional_extraction_insn, get_extraction_insn)
(get_best_reg_extraction_insn, get_best_mem_extraction_insn):
New functions.
* combine.c (make_extraction): Use get_best_reg_extraction_insn
instead of mode_for_extraction.
* expmed.c (HAVE_insv, CODE_FOR_insv, gen_insv, HAVE_extv)
(CODE_FOR_extv, gen_extv, HAVE_extzv, CODE_FOR_extzv, gen_extzv):
Remove fallback definitions.
(mode_for_extraction): Delete.
(adjust_bit_field_mem_for_reg): New function.
(store_bit_field_using_insv): Replace OP_MODE parameter with
an extraction_insn.  Pass struct_mode to narrow_bit_field_mem.
(extract_bit_field_using_extv): Likewise EXT_MODE.
(store_bit_field_1): Use get_best_reg_extraction_insn and
get_best_mem_extraction_insn instead of mode_for_extraction.
Use adjust_bit_field_mem_for_reg when forcing memory to a
register and doing a register insertion.  Update calls to
store_bit_field_using_insv.
(extract_bit_field_1): Likewise extractions and calls to
extract_bit_field_using_extv.
(store_Bit_field): When narrowing to a bitregion, don't use the
insv mode as a limit.
* recog.c: (HAVE_extv, CODE_FOR_extv, HAVE_extzv, CODE_FOR_extzv):
Provide defaults.
(simplify_while_replacing): Use insn_data instead of
mode_for_extraction.

From-SVN: r193605

11 years agostor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator): Set up a default...
Richard Sandiford [Sun, 18 Nov 2012 17:33:15 +0000 (17:33 +0000)]
stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator): Set up a default value of bitregion_end_.

gcc/
* stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator):
Set up a default value of bitregion_end_.
(bit_field_mode_iterator::next_mode): Always apply bitregion_end_
check.  Include SLOW_UNALIGNED_ACCESS in the alignment check.
(get_best_mode): Ignore modes that are wider than the alignment.

From-SVN: r193604

11 years agomachmode.h (bit_field_mode_iterator): New class.
Richard Sandiford [Sun, 18 Nov 2012 17:33:01 +0000 (17:33 +0000)]
machmode.h (bit_field_mode_iterator): New class.

gcc/
* machmode.h (bit_field_mode_iterator): New class.
(get_best_mode): Change final parameter to bool.
* stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator)
(bit_field_mode_iterator::next_mode): New functions, split out from...
(get_best_mode): ...here.  Change final parameter to bool.
Use bit_field_mode_iterator.

From-SVN: r193603

11 years agoexpmed.c (narrow_bit_field_mem): New function.
Richard Sandiford [Sun, 18 Nov 2012 17:32:45 +0000 (17:32 +0000)]
expmed.c (narrow_bit_field_mem): New function.

gcc/
* expmed.c (narrow_bit_field_mem): New function.
(store_bit_field_using_insv, store_bit_field_1, store_fixed_bit_field)
(extract_bit_field_1): Use it.

From-SVN: r193602

11 years agoexpr.h (adjust_address_1): Add a size parameter.
Richard Sandiford [Sun, 18 Nov 2012 17:32:29 +0000 (17:32 +0000)]
expr.h (adjust_address_1): Add a size parameter.

gcc/
* expr.h (adjust_address_1): Add a size parameter.
(adjust_address, adjust_address_nv, adjust_bitfield_address)
(adjust_bitfield_address_nv): Adjust accordingly.
(adjust_bitfield_address_size): Define.
* emit-rtl.c (adjust_address_1): Add a size parameter.
Use it to set the size if MODE has no size.  Check whether
the size matches before returning the original memref.
Require the size to be known for adjust_object.
(adjust_automodify_address_1, widen_memory_access): Update calls
to adjust_address_1.

From-SVN: r193601

11 years agocombine.c (make_extraction): Handle TRUNCATEd INNERs.
Richard Sandiford [Sun, 18 Nov 2012 17:32:04 +0000 (17:32 +0000)]
combine.c (make_extraction): Handle TRUNCATEd INNERs.

gcc/
* combine.c (make_extraction): Handle TRUNCATEd INNERs.

From-SVN: r193600

11 years agoexpr.c (expand_assignment): Don't set MEM_KEEP_ALIAS_SET_P here.
Richard Sandiford [Sun, 18 Nov 2012 17:31:38 +0000 (17:31 +0000)]
expr.c (expand_assignment): Don't set MEM_KEEP_ALIAS_SET_P here.

gcc/
* expr.c (expand_assignment): Don't set MEM_KEEP_ALIAS_SET_P here.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Handle DECL_BIT_FIELDs,
using their size instead of the COMPONENT_REF's.

From-SVN: r193599

11 years agot-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
Matthias Klose [Sun, 18 Nov 2012 13:37:05 +0000 (13:37 +0000)]
t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

2012-11-17  Matthias Klose  <doko@ubuntu.com>

        * config/mips/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

From-SVN: r193598

11 years agodecl.c: Remove trailing spaces.
Eric Botcazou [Sun, 18 Nov 2012 10:26:56 +0000 (10:26 +0000)]
decl.c: Remove trailing spaces.

* gcc-interface/decl.c: Remove trailing spaces.
* gcc-interface/trans.c: Remove trailing spaces.

From-SVN: r193597

11 years agocompiler: Adjust for vec changes.
Ian Lance Taylor [Sun, 18 Nov 2012 07:56:13 +0000 (07:56 +0000)]
compiler: Adjust for vec changes.

From-SVN: r193596

11 years agoThis patch rewrites the old VEC macro-based interface into a new one based on the...
Diego Novillo [Sun, 18 Nov 2012 02:54:30 +0000 (21:54 -0500)]
This patch rewrites the old VEC macro-based interface into a new one based on the template class 'vec'.

This patch rewrites the old VEC macro-based interface into a new one
based on the template class 'vec'.  The user-visible changes are
described in http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec.

I have tested the patch pretty extensively:

- Regular bootstraps on x86_64, ppc, ia64, sparc and hppa.
- Bootstraps with --enable-checking=release
- Bootstraps with --enable-checking=gc,gcac
- Basic builds on all targets (using contrib/config-list.mk).

We no longer access the vectors via VEC_* macros.  The pattern is
"VEC_operation (T, A, V, args)" becomes "V.operation (args)".

The only thing I could not do is create proper ctors and dtors for the
vec class.  Since these vectors are stored in unions, we
have to keep them as PODs (C++03 does not allow non-PODs in unions).

This means that creation and destruction must be explicit.  There is a
new method vec<type, allocation, layout>::create() and another vec<type,
allocation, layout>::destroy() to allocate the internal vector.

For vectors that must be pointers, there is a family of free functions
that implement the operations that need to tolerate NULL vectors.
These functions all start with the prefix 'vec_safe_'.  See the wiki
page for details.

The gengtype change removes the special handling for VEC() that used
to exist in gengtype. Additionally, it allows gengtype to recognize
templates of more than one argument and introduces the concept of an
undefined type (useful for template arguments that may or may not be
types).

When a TYPE_UNDEFINED is reached, gengtype will ignore it if it
happens inside a type marked with GTY((user)).  Otherwise, it will
emit an error.

Finally, gengtype rejects root types marked GTY((user)) that are not
first class pointers.

2012-11-16  Diego Novillo  <dnovillo@google.com>

VEC API overhaul (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)

* vec.c (register_overhead): Convert it into
member function of vec_prefix.
(release_overhead): Likewise.
(calculate_allocation): Likewise.
(vec_heap_free): Remove.
(vec_gc_o_reserve_1): Remove.
(vec_heap_o_reserve_1): Remove.
(vec_stack_o_reserve_1): Remove.
(vec_stack_o_reserve_exact): Remove.
(register_stack_vec): New.
(stack_vec_register_index): New.
(unregister_stack_vec): New.
(vec_assert_fail): Remove.
* vec.h: Conditionally include ggc.h.  Document conditional
hackery.
Update top-level documentation.
(ALONE_VEC_CHECK_INFO): Remove.
(VEC_CHECK_INFO): Remove.
(ALONE_VEC_CHECK_DECL): Remove.
(VEC_CHECK_DECL): Remove.
(ALONE_VEC_CHECK_PASS): Remove.
(VEC_CHECK_PASS): Remove.
(VEC_ASSERT): Remove.
(vec_prefix): Add friends va_gc, va_gc_atomic, va_heap and
va_stack.
Mark fields alloc_ and num_ as protected.
(struct vec_t): Remove.  Remove all function members.
(struct vl_embed): Declare.
(struct vl_ptr): Declare.
(free): Remove.
(reserve_exact): Remove.
(reserve): Remove.
(safe_splice): Remove.
(safe_push): Remove.
(safe_grow): Remove.
(safe_grow_cleared): Remove.
(safe_insert): Remove.
(DEF_VEC_I): Remove.
(DEF_VEC_ALLOC_I): Remove.
(DEF_VEC_P): Remove.
(DEF_VEC_ALLOC_P): Remove.
(DEF_VEC_O): Remove.
(DEF_VEC_ALLOC_O): Remove.
(DEF_VEC_ALLOC_P_STACK): Remove.
(DEF_VEC_ALLOC_O_STACK): Remove.
(DEF_VEC_ALLOC_I_STACK): Remove.
(DEF_VEC_A): Remove.
(DEF_VEC_ALLOC_A): Remove.
(vec_stack_p_reserve_exact_1): Remove.
(vec_stack_o_reserve): Remove.
(vec_stack_o_reserve_exact): Remove.
(VEC_length): Remove.
(VEC_empty): Remove.
(VEC_address): Remove.
(vec_address): Remove.
(VEC_last): Remove.
(VEC_index): Remove.
(VEC_iterate): Remove.
(VEC_embedded_size): Remove.
(VEC_embedded_init): Remove.
(VEC_free): Remove.
(VEC_copy): Remove.
(VEC_space): Remove.
(VEC_reserve): Remove.
(VEC_reserve_exact): Remove.
(VEC_splice): Remove.
(VEC_safe_splice): Remove.
(VEC_quick_push): Remove.
(VEC_safe_push): Remove.
(VEC_pop): Remove.
(VEC_truncate): Remove.
(VEC_safe_grow): Remove.
(VEC_replace): Remove.
(VEC_quick_insert): Remove.
(VEC_safe_insert): Remove.
(VEC_ordered_remove): Remove.
(VEC_unordered_remove): Remove.
(VEC_block_remove): Remove.
(VEC_lower_bound): Remove.
(VEC_alloc): Remove.
(VEC_qsort): Remove.

(va_heap): Declare.
(va_heap::default_layout): New typedef to vl_ptr.
(va_heap::reserve): New.
(va_heap::release): New.
(va_gc): Declare.
(va_gc::default_layout): New typedef to vl_embed.
(va_gc::reserve): New.
(va_gc::release): New.
(va_gc_atomic): Declare.  Inherit from va_gc.
(va_stack): Declare.
(va_stack::default_layout): New typedef to vl_ptr.
(va_stack::alloc): New.
(va_stack::reserve): New.
(va_stack::release): New.
(register_stack_vec): Declare.
(stack_vec_register_index): Declare.
(unregister_stack_vec): Declare.

(vec<T, A = va_heap, L = typename A::default_layout>): Declare
empty vec template.
(vec<T, A, vl_embed>): Partial specialization for embedded
layout.
(vec<T, A, vl_embed>::allocated): New.
(vec<T, A, vl_embed>::length): New.
(vec<T, A, vl_embed>::is_empty): New.
(vec<T, A, vl_embed>::address): New.
(vec<T, A, vl_embed>::operator[]): New.
(vec<T, A, vl_embed>::last New.
(vec<T, A, vl_embed>::space): New.
(vec<T, A, vl_embed>::iterate): New.
(vec<T, A, vl_embed>::iterate): New.
(vec<T, A, vl_embed>::copy): New.
(vec<T, A, vl_embed>::splice): New.
(vec<T, A, vl_embed>::quick_push New.
(vec<T, A, vl_embed>::pop New.
(vec<T, A, vl_embed>::truncate): New.
(vec<T, A, vl_embed>::quick_insert): New.
(vec<T, A, vl_embed>::ordered_remove): New.
(vec<T, A, vl_embed>::unordered_remove): New.
(vec<T, A, vl_embed>::block_remove): New.
(vec<T, A, vl_embed>::qsort): New.
(vec<T, A, vl_embed>::lower_bound): New.
(vec<T, A, vl_embed>::embedded_size): New.
(vec<T, A, vl_embed>::embedded_init): New.
(vec<T, A, vl_embed>::quick_grow): New.
(vec<T, A, vl_embed>::quick_grow_cleared): New.
(vec_safe_space): New.
(vec_safe_length): New.
(vec_safe_address): New.
(vec_safe_is_empty): New.
(vec_safe_reserve): New.
(vec_safe_reserve_exact): New.
(vec_alloc): New.
(vec_free): New.
(vec_safe_grow): New.
(vec_safe_grow_cleared): New.
(vec_safe_iterate): New.
(vec_safe_push): New.
(vec_safe_insert): New.
(vec_safe_truncate): New.
(vec_safe_copy): New.
(vec_safe_splice): New.

(vec<T, A, vl_ptr>): New partial specialization for the space
efficient layout.
(vec<T, A, vl_ptr>::exists): New.
(vec<T, A, vl_ptr>::is_empty): New.
(vec<T, A, vl_ptr>::length): New.
(vec<T, A, vl_ptr>::address): New.
(vec<T, A, vl_ptr>::operator[]): New.
(vec<T, A, vl_ptr>::operator!=): New.
(vec<T, A, vl_ptr>::operator==): New.
(vec<T, A, vl_ptr>::last): New.
(vec<T, A, vl_ptr>::space): New.
(vec<T, A, vl_ptr>::iterate): New.
(vec<T, A, vl_ptr>::copy): New.
(vec<T, A, vl_ptr>::reserve): New.
(vec<T, A, vl_ptr>::reserve_exact): New.
(vec<T, A, vl_ptr>::splice): New.
(vec<T, A, vl_ptr>::safe_splice): New.
(vec<T, A, vl_ptr>::quick_push): New.
(vec<T, A, vl_ptr>::safe_push): New.
(vec<T, A, vl_ptr>::pop): New.
(vec<T, A, vl_ptr>::truncate): New.
(vec<T, A, vl_ptr>::safe_grow): New.
(vec<T, A, vl_ptr>::safe_grow_cleared): New.
(vec<T, A, vl_ptr>::quick_grow): New.
(vec<T, A, vl_ptr>::quick_grow_cleared): New.
(vec<T, A, vl_ptr>::quick_insert): New.
(vec<T, A, vl_ptr>::safe_insert): New.
(vec<T, A, vl_ptr>::ordered_remove): New.
(vec<T, A, vl_ptr>::unordered_remove): New.
(vec<T, A, vl_ptr>::block_remove): New.
(vec<T, A, vl_ptr>::qsort): New.
(vec<T, A, vl_ptr>::lower_bound): New.
(vec_stack_alloc): Define.
(FOR_EACH_VEC_SAFE_ELT): Define.
* vecir.h: Remove.  Update all users.
* vecprim.h: Remove.  Update all users.
Move uchar to coretypes.h.

* Makefile.in (VEC_H): Add $(GGC_H).
Remove vecir.h and vecprim.h dependencies everywhere.

2012-11-16  Diego Novillo  <dnovillo@google.com>

* gengtype-lex.l (VEC): Remove.
Add characters in the set [\!\>\.-].
* gengtype-parse.c (token_names): Remove "VEC".
(require_template_declaration): Remove handling of VEC_TOKEN.
(type): Likewise.
Call create_user_defined_type when parsing GTY((user)).
* gengtype-state.c (type_lineloc): handle TYPE_UNDEFINED.
(write_state_undefined_type): New.
(write_state_type): Call write_state_undefined_type for
TYPE_UNDEFINED.
(read_state_type): Call read_state_undefined_type for
TYPE_UNDEFINED.
* gengtype.c (dbgprint_count_type_at): Handle TYPE_UNDEFINED.
(create_user_defined_type): Make extern.
(type_for_name): Factor out of resolve_typedef.
(create_undefined_type): New
(resolve_typedef): Call it when we cannot find a previous
typedef and the type is not a template.
(find_structure): Accept TYPE_UNDEFINED.
(set_gc_used_type): Add argument ALLOWED_UNDEFINED_TYPES,
default to false.
Emit an error for TYPE_UNDEFINED unless LEVEL is GC_UNUSED or
ALLOWED_UNDEFINED_TYPES is set.
Set ALLOWED_UNDEFINED_TYPES to true for TYPE_USER_STRUCT.
(filter_type_name): Accept templates with more than one
argument.
(output_mangled_typename): Handle TYPE_UNDEFINED
(walk_type): Likewise.
(write_types_process_field): Likewise.
(write_func_for_structure): If CHAIN_NEXT is set, ORIG_S
should not be a user-defined type.
(write_types_local_user_process_field): Handle TYPE_ARRAY,
TYPE_NONE and TYPE_UNDEFINED.
(write_types_local_process_field): Likewise.
(contains_scalar_p): Return 0 for TYPE_USER_STRUCT.
(write_root): Reject user-defined types that are not pointers.
Handle TYPE_NONE, TYPE_UNDEFINED, TYPE_UNION, TYPE_LANG_STRUCT
and TYPE_PARAM_STRUCT.
(output_typename): Handle TYPE_NONE, TYPE_UNDEFINED, and
TYPE_ARRAY.
(dump_typekind): Handle TYPE_UNDEFINED.
* gengtype.h (enum typekind): Add TYPE_UNDEFINED.
(create_user_defined_type): Declare.
(enum gty_token): Remove VEC_TOKEN.

2012-11-16  Diego Novillo  <dnovillo@google.com>

Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)

* coretypes.h (uchar): Define.
* alias.c: Use new vec API in vec.h.
* asan.c: Likewise.
* attribs.c: Likewise.
* basic-block.h: Likewise.
* bb-reorder.c: Likewise.
* builtins.c: Likewise.
* calls.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfghooks.h: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraph.h: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* coverage.c: Likewise.
* cprop.c: Likewise.
* data-streamer.h: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* domwalk.h: Likewise.
* dse.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* dwarf2out.h: Likewise.
* emit-rtl.c: Likewise.
* except.c: Likewise.
* except.h: Likewise.
* expr.c: Likewise.
* expr.h: Likewise.
* final.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* function.h: Likewise.
* fwprop.c: Likewise.
* gcc.c: Likewise.
* gcse.c: Likewise.
* genattr.c: Likewise.
* genattrtab.c: Likewise.
* genautomata.c: Likewise.
* genextract.c: Likewise.
* genopinit.c: Likewise
* ggc-common.c: Likewise.
* ggc.h: Likewise.
* gimple-low.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple.c: Likewise.
* gimple.h: Likewise.
* gimplify.c: Likewise.
* graph.c: Likewise.
* graphds.c: Likewise.
* graphds.h: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-poly.h: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-scop-detection.h: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* godump.c: Likewise.
* haifa-sched.c: Likewise.
* hw-doloop.c: Likewise.
* hw-doloop.h: Likewise.
* ifcvt.c: Likewise.
* insn-addr.h: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-inline.h: Likewise.
* ipa-prop.c: Likewise.
* ipa-prop.h: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-ref-inline.h: Likewise.
* ipa-ref.c: Likewise.
* ipa-ref.h: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ipa-utils.h: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-emit.c: Likewise.
* ira-int.h: Likewise.
* ira.c: Likewise.
* loop-invariant.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-lives.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.h: Likewise.
* lto-symtab.c: Likewise.
* mcf.c: Likewise.
* modulo-sched.c: Likewise.
* omp-low.c: Likewise.
* opts-common.c: Likewise.
* opts-global.c: Likewise.
* opts.c: Likewise.
* opts.h: Likewise.
* passes.c: Likewise.
* predict.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* profile.h: Likewise.
* read-rtl.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regrename.c: Likewise.
* regrename.h: Likewise.
* reload.c: Likewise.
* reload.h: Likewise.
* reload1.c: Likewise.
* rtl.h: Likewise.
* sched-deps.c: Likewise.
* sched-int.h: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* sese.h: Likewise.
* statistics.h: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* tlink.c: Likewise.
* toplev.c: Likewise.
* trans-mem.c: Likewise.
* tree-browser.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-chrec.h: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-data-ref.h: Likewise.
* tree-dfa.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-dump.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-flow.h: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-inline.h: Likewise.
* tree-into-ssa.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-optimize.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-live.h: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-sccvn.h: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* tree-streamer.h: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vectorizer.h: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tree.h: Likewise.
* value-prof.c: Likewise.
* value-prof.h: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vmsdbgout.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/pa/pa.c: Likewise.
* config/rs6000/rs6000-c.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/vms/vms.c: Likewise.
* config/vxworks.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.

From-SVN: r193595

11 years agoDaily bump.
GCC Administrator [Sun, 18 Nov 2012 00:18:41 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193594

11 years agore PR tree-optimization/55236 (gcc.c-torture/execute/pr22493-1.c FAILs with -fPIC)
Jakub Jelinek [Sat, 17 Nov 2012 22:00:32 +0000 (23:00 +0100)]
re PR tree-optimization/55236 (gcc.c-torture/execute/pr22493-1.c FAILs with -fPIC)

PR tree-optimization/55236
* fold-const.c (make_range_step) <case NEGATE_EXPR>: For -fwrapv
and signed ARG0_TYPE, force low and high to be non-NULL.

* gcc.dg/pr55236.c: New test.

From-SVN: r193591

11 years agore PR testsuite/55188 (FAIL: gcc.dg/pr19105.c scan-tree-dump-times reassoc1 "Optimizi...
Jakub Jelinek [Sat, 17 Nov 2012 21:58:44 +0000 (22:58 +0100)]
re PR testsuite/55188 (FAIL: gcc.dg/pr19105.c scan-tree-dump-times reassoc1 "Optimizing range tests v_[0-9]*.D. -.2, 2. and -.3, 4.[\n\r]* into" 1)

PR testsuite/55188
* gcc.dg/pr19105.c: Accept also optimizing
-[2, 2] and -[3, 3] and -[4, 4] range tests together.

From-SVN: r193590

11 years agoAdd -static-libasan option to the GCC driver
H.J. Lu [Sat, 17 Nov 2012 20:31:06 +0000 (20:31 +0000)]
Add -static-libasan option to the GCC driver

* common.opt (static-libasan): New option.
* gcc.c (LIBASAN_SPEC): New macro.
(LINK_COMMAND_SPEC): Replace -lasan with LIBASAN_SPEC.
* doc/invoke.texi: Document -static-libasan.

From-SVN: r193589

11 years agore PR rtl-optimization/55342 ([LRA,x86] Non-optimal code for simple loop with LRA)
Vladimir Makarov [Sat, 17 Nov 2012 17:59:35 +0000 (17:59 +0000)]
re PR rtl-optimization/55342 ([LRA,x86] Non-optimal code for simple loop with LRA)

2012-11-17  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55342
* lra-assigns.c (spill_for): Try to allocate other reload pseudos
before and after spilling.

From-SVN: r193588

11 years agosemantics.c (finish_id_expression): Tidy diagnostic message.
Gabriel Dos Reis [Sat, 17 Nov 2012 16:47:47 +0000 (16:47 +0000)]
semantics.c (finish_id_expression): Tidy diagnostic message.

* semantics.c (finish_id_expression): Tidy diagnostic message.

From-SVN: r193587

11 years agoasan-dg.exp (asan_symbolize): Prune BFD: prefixed error messages from addr2line_output.
Jakub Jelinek [Sat, 17 Nov 2012 13:03:39 +0000 (14:03 +0100)]
asan-dg.exp (asan_symbolize): Prune BFD: prefixed error messages from addr2line_output.

* lib/asan-dg.exp (asan_symbolize): Prune BFD: prefixed error messages
from addr2line_output.  Increment idx if asking for more than one address
in one object.

From-SVN: r193586

11 years agore PR fortran/55341 (address-sanitizer and Fortran)
Jakub Jelinek [Sat, 17 Nov 2012 13:02:56 +0000 (14:02 +0100)]
re PR fortran/55341 (address-sanitizer and Fortran)

PR fortran/55341
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Convert last
argument to memcpy to size_type_node type.
* trans-stmt.c (gfc_conv_elemental_dependencies): Likewise.
* trasn-array.c (duplicate_allocatable): Likewise.

From-SVN: r193585

11 years agore PR libstdc++/55363 (tuple_size is not a class template)
Paolo Carlini [Sat, 17 Nov 2012 12:09:58 +0000 (12:09 +0000)]
re PR libstdc++/55363 (tuple_size is not a class template)

2012-11-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/55363
* include/std/array (tuple_size, tuple_element): Move out
NAMESPACE_CONTAINER.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
dg-error line numbers.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
Likewise.

From-SVN: r193584

11 years agoextend.texi: Various copy-edits to comply with GCC coding standards for spelling...
Sandra Loosemore [Sat, 17 Nov 2012 03:25:59 +0000 (22:25 -0500)]
extend.texi: Various copy-edits to comply with GCC coding standards for spelling...

2012-11-16  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/extend.texi: Various copy-edits to comply with GCC coding
standards for spelling, terminology, and markup, including use of
American spelling, correct use of terms like "back end" and
"run time", use correct name for GCC, use "@:" markup.

From-SVN: r193583

11 years agoruntime: Fix use of __atomic_compare_exchange_n: not weak, consistent.
Ian Lance Taylor [Sat, 17 Nov 2012 00:52:22 +0000 (00:52 +0000)]
runtime: Fix use of __atomic_compare_exchange_n: not weak, consistent.

From-SVN: r193581

11 years agoDaily bump.
GCC Administrator [Sat, 17 Nov 2012 00:18:31 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193580

11 years agore PR tree-optimization/55329 (ICE: internal compiler error: in operator[], at vec...
Jakub Jelinek [Fri, 16 Nov 2012 22:05:32 +0000 (23:05 +0100)]
re PR tree-optimization/55329 (ICE: internal compiler error: in operator[], at vec.h:487 with -O -fno-guess-branch-probability -fnon-call-exceptions --param=early-inlining-insns=111)

PR tree-optimization/55329
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Never clear
bits in needed_eh_cleanup while iterating over the bitmap.
Look through all forwarder blocks at once.

* g++.dg/opt/pr55329.C: New test.

From-SVN: r193577

11 years agohashtable_policy.h (_Prime_rehash_policy): Remove automatic shrink.
François Dumont [Fri, 16 Nov 2012 21:28:44 +0000 (21:28 +0000)]
hashtable_policy.h (_Prime_rehash_policy): Remove automatic shrink.

2012-11-16  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
automatic shrink.
(_Prime_rehash_policy::_M_bkt_for_elements): Do not call
_M_next_bkt anymore.
(_Prime_rehash_policy::_M_next_bkt): Move usage of
_S_growth_factor ...
(_Prime_rehash_policy::_M_need_rehash): ... here.
* include/bits/hashtable.h (_Hashtable<>): Adapt.
* testsuite/performance/23_containers/insert_erase/41975.cc: Add
_USE_TR1 to force build using std::tr1 container.
* testsuite/performance/23_containers/insert/unordered_set.cc:
Likewise.
* testsuite/performance/23_containers/insert/54075.cc: New.

From-SVN: r193576

11 years ago2012-11-16 Matthias Klose <doko@ubuntu.com>
Matthias Klose [Fri, 16 Nov 2012 18:35:05 +0000 (18:35 +0000)]
2012-11-16  Matthias Klose  <doko@ubuntu.com>

        * Imported zlib 1.2.7; merged local changes.

From-SVN: r193574

11 years agowhatis.cc: New file.
Tom Tromey [Fri, 16 Nov 2012 18:17:25 +0000 (18:17 +0000)]
whatis.cc: New file.

* testsuite/libstdc++-prettyprinters/whatis.cc: New file.
* testsuite/lib/gdb-test.exp (whatis-test): New proc.
(gdb-test): Handle 'whatis' tests.
(gdb_batch_check): New proc.
(gdb_version_check): Rewrite to use gdb_batch_check.
* python/libstdcxx/v6/printers.py: Import gdb.types.
(FilteringTypePrinter): New class.
(add_one_type_printer, register_type_printers): New functions.
(register_libstdcxx_printers): Call register_type_printers.

From-SVN: r193573

11 years agoFix commit of testcase which got truncated somehow.
Ian Bolton [Fri, 16 Nov 2012 17:36:00 +0000 (17:36 +0000)]
Fix commit of testcase which got truncated somehow.

From-SVN: r193571

11 years ago* params.def (max-peeled-insns, max-completely-peeled-insns): Reduce to 100.
Jan Hubicka [Fri, 16 Nov 2012 17:27:30 +0000 (17:27 +0000)]
* params.def (max-peeled-insns, max-completely-peeled-insns): Reduce to 100.

From-SVN: r193570

11 years agocpplib.h (struct cpp_options): Add canonical_system_headers.
Simon Baldwin [Fri, 16 Nov 2012 17:14:05 +0000 (17:14 +0000)]
cpplib.h (struct cpp_options): Add canonical_system_headers.

    * include/cpplib.h (struct cpp_options): Add canonical_system_headers.
    * files.c (find_file_in_dir): Call maybe_shorter_path() only if
    canonical_system_headers is set.
    * init.c (cpp_create_reader): Initialize canonical_system_headers.
    * configure.ac: Add new --enable-canonical-system-headers.
    * configure: Regenerate.
    * config.in: Regenerate.

    * doc/cppopts.texi: Document -f[no-]canonical-system-headers.
    * doc/install.texi: Document --enable-canonical-system-headers.

    * c.opt: Add f[no-]canonical-system-headers.
    * c-opts.c (c_common_handle_option): Handle
    OPT_fcanonical_system_headers.

From-SVN: r193569

11 years agore PR fortran/55297 ([OOP] type-bound operator clashes with abstract interface)
Janus Weil [Fri, 16 Nov 2012 17:02:02 +0000 (18:02 +0100)]
re PR fortran/55297 ([OOP] type-bound operator clashes with abstract interface)

2012-11-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55297
* resolve.c (resolve_typebound_intrinsic_op): Only add typebound
operators to the operator list in the namespace of the derived type.

2012-11-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55297
* gfortran.dg/typebound_operator_18.f90: New.

From-SVN: r193568

11 years agore PR rtl-optimization/55330 (ICE: Maximum number of LRA constraint passes is achieve...
Vladimir Makarov [Fri, 16 Nov 2012 16:32:02 +0000 (16:32 +0000)]
re PR rtl-optimization/55330 (ICE: Maximum number of LRA constraint passes is achieved (15) on gfortran.dg/actual_array_constructor_1.f90)

2012-11-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55330
* lra-constraints.c (MAX_INHERITANCE_PASSES): New macro.
(lra_inheritance, lra_undo_inheritance): Use it to limit number of
the passes.

2012-11-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55330
* gfortran.dg/pr55330.f90: New test.

From-SVN: r193567

11 years agocompiler: don't remove floating point conversion of typed constant
Ian Lance Taylor [Fri, 16 Nov 2012 16:30:35 +0000 (16:30 +0000)]
compiler: don't remove floating point conversion of typed constant

From-SVN: r193565

11 years agoMake-lang.in (gccgo$(exeext)): Add + at start of command.
Ian Lance Taylor [Fri, 16 Nov 2012 16:27:54 +0000 (16:27 +0000)]
Make-lang.in (gccgo$(exeext)): Add + at start of command.

* Make-lang.in (gccgo$(exeext)): Add + at start of command.
(go1$(exeext)): Likewise.

From-SVN: r193564

11 years agogcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.
Uros Bizjak [Fri, 16 Nov 2012 15:50:05 +0000 (16:50 +0100)]
gcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.

* lib/gcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.
* gcc.dg/hoist-register-pressure-1.c: Cleanup hoist rtl dump.
* gcc.dg/hoist-register-pressure-2.c: Ditto.
* gcc.dg/hoist-register-pressure-3.c: Ditto.
* gcc.dg/tree-prof/peel-1.c: Cleanup loop2_unroll rtl dump.
* gcc.dg/tree-prof/unroll-1.c: Ditto.

From-SVN: r193563

11 years agoPR c++/54875 - Error with alias template that resolves to an enum
Dodji Seketeli [Fri, 16 Nov 2012 15:20:03 +0000 (15:20 +0000)]
PR c++/54875 -  Error with alias template that resolves to an enum

Consider this short example:

     1 template<typename T>
     2 using AddConst = T const;
     3
     4 enum FwdEnum : int;
     5
     6 int main() {
     7   AddConst<FwdEnum> *ptr = nullptr;
     8 }

At line 7, when we build the type for AddConst<FwdEnum> in
lookup_template_class_1, the resulting type is the enum FwdEnum.  This
confuses lookup_template_class_1 near the if below, wrongly making it
taking the branch and thus calling tsubst_enum while it shouldn't:

      if (TREE_CODE (t) == ENUMERAL_TYPE && !is_dependent_type)
/* Now that the type has been registered on the instantiations
   list, we set up the enumerators.  Because the enumeration
   constants may involve the enumeration type itself, we make
   sure to register the type first, and then create the
   constants.  That way, doing tsubst_expr for the enumeration
   constants won't result in recursive calls here; we'll find
   the instantiation and exit above.  */
tsubst_enum (template_type, t, arglist);

Before the alias template feature, the only reason why TREE_CODE (t)
== ENUMERAL_TYPE would be true is when lookup_template_class_1 is
called for an enum that is a member of a class template.  But that
condition can be also true for an alias template instantiation.

So I guess that condition should be changed to TREE_CODE
(template_type) == ENUMERAL_TYPE, to specifically detect the member
enum of a class template case.  Note that for the alias template
instantiation case above, template_type points to a TEMPLATE_TYPE_PARM
which name is AddConst.

This is what the patchlet below does.

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp/

* pt.c (lookup_template_class_1): Look at the type of the
potential member enum of class template to determine if we are
actually substituting into a member enum of class template.

gcc/testsuite/

* g++.dg/cpp0x/alias-decl-27.C: New test.

From-SVN: r193562

11 years agoconfigure.ac: Invoke AM_MAINTAINER_MODE.
Tom Tromey [Fri, 16 Nov 2012 15:19:15 +0000 (15:19 +0000)]
configure.ac: Invoke AM_MAINTAINER_MODE.

* configure.ac: Invoke AM_MAINTAINER_MODE.
* aclocal.m4, configure, Makefile.in, asan/Makefile.in,
interception/Makefile.in, sanitizer_common/Makefile.in: Rebuild.

From-SVN: r193561

11 years agot-linux: New file; define MULTIARCH_DIRNAME.
Matthias Klose [Fri, 16 Nov 2012 15:19:14 +0000 (15:19 +0000)]
t-linux: New file; define MULTIARCH_DIRNAME.

2012-11-16  Matthias Klose  <doko@ubuntu.com>

        * config/pa/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <hppa*64*-*-linux*, hppa*-*-linux*> (tmake_file):
        Include pa/t-linux.

From-SVN: r193560

11 years ago* lib/target-supports.exp
Uros Bizjak [Fri, 16 Nov 2012 14:53:53 +0000 (15:53 +0100)]
* lib/target-supports.exp
(check_effective_target_has_w_floating_suffix): Use options for c++ only.
(check_effective_target_has_q_floating_suffix): Ditto.

From-SVN: r193559

11 years agore PR c++/55337 (ICE tree check: expected sizeof_expr, have alignof_expr in cp_tree_e...
Jakub Jelinek [Fri, 16 Nov 2012 14:33:44 +0000 (15:33 +0100)]
re PR c++/55337 (ICE tree check: expected sizeof_expr, have alignof_expr in cp_tree_equal, at cp/tree.c:2608)

PR c++/55337
* tree.c (cp_tree_equal) <case ALIGNOF_EXPR>: Use SIZEOF_EXPR_TYPE_P
only on SIZEOF_EXPR.

* g++.dg/template/alignof2.C: New test.

From-SVN: r193558

11 years agoDefine/use hardware pointer type for stack unwind
H.J. Lu [Fri, 16 Nov 2012 12:02:29 +0000 (12:02 +0000)]
Define/use hardware pointer type for stack unwind

PR other/55333
* include/sanitizer/common_interface_defs.h (uhwptr): New type
for hardware pointer.
* sanitizer_common/sanitizer_stacktrace.cc (StackTrace::FastUnwindStack):
Replace uptr with uhwptr for stack unwind.

From-SVN: r193557

11 years ago* ChangeLog: Add ChangeLog entry for my last commit.
Uros Bizjak [Fri, 16 Nov 2012 11:49:08 +0000 (12:49 +0100)]
* ChangeLog: Add ChangeLog entry for my last commit.

From-SVN: r193556

11 years agomv1.C (dg-options): Add -march=x86-64.
Uros Bizjak [Fri, 16 Nov 2012 11:45:15 +0000 (12:45 +0100)]
mv1.C (dg-options): Add -march=x86-64.

* g++.dg/mv1.C (dg-options): Add -march=x86-64.
* g++.dg/mv6.C (dg-options): Ditto.

From-SVN: r193555

11 years agore PR tree-optimization/54073 (SciMark Monte Carlo test performance has seriously...
Jakub Jelinek [Fri, 16 Nov 2012 11:40:39 +0000 (12:40 +0100)]
re PR tree-optimization/54073 (SciMark Monte Carlo test performance has seriously decreased in recent GCC releases)

PR target/54073
* config/i386/i386.md (mov<mode>cc): Use comparison_operator
instead of ordered_comparison_operator resp.
ix86_fp_comparison_operator predicates.
* config/i386/i386.c (ix86_expand_fp_movcc): Reject TImode
or for -m32 DImode comparisons.

From-SVN: r193554

11 years agore PR tree-optimization/54717 (Runtime regression: polyhedron test "rnflow" degraded)
Jan Hubicka [Fri, 16 Nov 2012 10:37:25 +0000 (11:37 +0100)]
re PR tree-optimization/54717 (Runtime regression: polyhedron test "rnflow" degraded)

PR tree-optimization/54717
* tree-ssa-pre.c (do_partial_partial_insertion): Consider also edges
with ANTIC_IN.

From-SVN: r193553

11 years agoEnable building of libsanitizer on sparc linux
Dodji Seketeli [Fri, 16 Nov 2012 08:11:03 +0000 (08:11 +0000)]
Enable building of libsanitizer on sparc linux

libsanitizer/ChangeLog:

* configure.tgt: Enable sparc linux.

From-SVN: r193552

11 years ago* lib/target_suports.exp
Uros Bizjak [Fri, 16 Nov 2012 07:51:43 +0000 (08:51 +0100)]
* lib/target_suports.exp
(check_effective_target_has_w_floating_suffix): New procedure.
(check_effective_target_has_q_floating_suffix): Ditto.
* g++.dg/cpp0x/gnu_fext-numeric-literals.C: Add dg-error directive
for unsupported non-standard suffix on floating constant.
* g++.dg/cpp0x/std_fext-numeric-literals.C: Ditto.

From-SVN: r193551

11 years agoi386-protos.h (ix86_emit_mode_set): Add third argument.
Uros Bizjak [Fri, 16 Nov 2012 07:42:19 +0000 (08:42 +0100)]
i386-protos.h (ix86_emit_mode_set): Add third argument.

* config/i386/i386-protos.h (ix86_emit_mode_set): Add third argument.
* config/i386/i386.h (EMIT_MODE_SET): Update.
* config/i386/i386.c (ix86_avx_emit_vzeroupper): New function.
(ix86_emit_mode_set) <AVX_U128>: Call ix86_avx_emit_vzeroupper.

From-SVN: r193550

11 years agoAMD bdver3 enablement
Ganesh Gopalasubramanian [Fri, 16 Nov 2012 07:18:37 +0000 (07:18 +0000)]
AMD bdver3 enablement

From-SVN: r193549

11 years agoAMD bdver3 enablement
Ganesh Gopalasubramanian [Fri, 16 Nov 2012 07:17:30 +0000 (07:17 +0000)]
AMD bdver3 enablement

From-SVN: r193548

11 years agoFix gcc.c-torture/compile/pr53410-2.c on sparc.
David S. Miller [Fri, 16 Nov 2012 05:31:46 +0000 (05:31 +0000)]
Fix gcc.c-torture/compile/pr53410-2.c on sparc.

* expmed.c (expand_shift_1): Don't strip non-integral SUBREGs.

From-SVN: r193547

11 years agoDaily bump.
GCC Administrator [Fri, 16 Nov 2012 00:18:13 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193546

11 years agoAdd support for sparc fused compare-and-branch.
David S. Miller [Thu, 15 Nov 2012 21:24:22 +0000 (21:24 +0000)]
Add support for sparc fused compare-and-branch.

gcc/

2012-11-15  David S. Miller  <davem@davemloft.net>

* configure.ac: Add check for assembler SPARC4 instruction
support.
* configure: Rebuild.
* config.in: Add HAVE_AS_SPARC4 section.
* config/sparc/sparc.opt (mcbcond): New option.
* doc/invoke.texi: Document it.
* config/sparc/constraints.md: New constraint 'A' for 5-bit signed
immediates.
* doc/md.texi: Document it.
* config/sparc/sparc.c (dump_target_flag_bits): Handle MASK_CBCOND.
(sparc_option_override): Likewise.
(emit_cbcond_insn): New function.
(emit_conditional_branch_insn): Call it.
(emit_cbcond_nop): New function.
(output_ubranch): Use cbcond, remove label arg.
(output_cbcond): New function.
* config/sparc/sparc-protos.h (output_ubranch): Update.
(output_cbcond): Declare it.
(emit_cbcond_nop): Likewise.
* config/sparc/sparc.md (type attribute): New types 'cbcond'
and uncond_cbcond.
(emit_cbcond_nop): New attribute.
(length attribute): Handle cbcond and uncond_cbcond.
(in_call_delay attribute): Reject cbcond and uncond_cbcond.
(in_branch_delay attribute): Likewise.
(in_uncond_branch_delay attribute): Likewise.
(in_annul_branch_delay attribute): Likewise.
(*cbcond_sp32, *cbcond_sp64): New insn patterns.
(jump): Rewrite into an expander.
(*jump_ubranch, *jump_cbcond): New patterns.
* config/sparc/niagara4.md: Match 'cbcond' in 'n4_cti'.
* config/sparc/sparc.h (AS_NIAGARA4_FLAG): New macro, use it
when target default is niagara4.
(SPARC_SIMM5_P): Define.
* config/sparc/sol2.h (AS_SPARC64_FLAG): Adjust.
(AS_SPARC32_FLAG): Define.
(ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Use
AS_NIAGARA4_FLAG as needed.

From-SVN: r193543

11 years ago* MAINTAINERS (Write After Approval): Add myself.
Roland McGrath [Thu, 15 Nov 2012 19:12:53 +0000 (19:12 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r193542

11 years agosoft-fp updated from GLIBC upstream.
Marcus Shawcroft [Thu, 15 Nov 2012 18:39:47 +0000 (18:39 +0000)]
soft-fp updated from GLIBC upstream.

From-SVN: r193540

11 years agoexpr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.
Steve Ellcey [Thu, 15 Nov 2012 17:27:44 +0000 (17:27 +0000)]
expr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.

2012-11-15  Steve Ellcey  <sellcey@mips.com>

* expr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.

From-SVN: r193539

11 years agofmaq.c (fmaq): Merge from GLIBC.
Tobias Burnus [Thu, 15 Nov 2012 17:22:21 +0000 (18:22 +0100)]
fmaq.c (fmaq): Merge from GLIBC.

2012-11-15  Tobias Burnus  <burnus@net-b.de>
            Joseph Myers  <joseph@codesourcery.com>

        * math/fmaq.c (fmaq): Merge from GLIBC. Fix fma
        underflows with small x * y; Fix overflow results
        outside round-to-nearest mode; make use of Dekker
        and Knuth algorithms use round-to-nearest.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r193538

11 years agore PR tree-optimization/54619 (GCC aborts during compilation with '-O2 -mips16')
Tom de Vries [Thu, 15 Nov 2012 16:49:45 +0000 (16:49 +0000)]
re PR tree-optimization/54619 (GCC aborts during compilation with '-O2 -mips16')

2012-11-15  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/54619
* tree-ssa-loop-ivopts.c (get_use_type): New function.
(get_computation_at): Use get_use_type.
(get_computation_cost_at): Declare and set mem_mode.  Use mem_mode.

From-SVN: r193537

11 years agoMAINTAINERS: (libsanitizer...
Dmitry Vyukov [Thu, 15 Nov 2012 16:28:39 +0000 (08:28 -0800)]
MAINTAINERS: (libsanitizer...

* MAINTAINERS: (libsanitizer, asan.c): Add myself,
Kostya Serebryany (kcc@google.com) and
Jakub Jelinek (jakub@redhat.com).
Rename area for Dodji Seketeli (dodji@redhat.com).

From-SVN: r193536

11 years agore PR c++/54903 (Auto + static in-class constant initialization not working)
Jason Merrill [Thu, 15 Nov 2012 16:11:56 +0000 (11:11 -0500)]
re PR c++/54903 (Auto + static in-class constant initialization not working)

PR c++/54903
* decl2.c (mark_used): Don't complain about auto in templates.

From-SVN: r193535

11 years agoProperly set MULTISUBDIR and gcc_version
H.J. Lu [Thu, 15 Nov 2012 16:00:47 +0000 (16:00 +0000)]
Properly set MULTISUBDIR and gcc_version

* configure.ac: Properly set MULTISUBDIR.
* asan/Makefile.am (gcc_version): New.
* interception/Makefile.am (gcc_version): Likewise.
* sanitizer_common/Makefile.am (gcc_version): Likewise.
* configure: Regenerated.
* asan/Makefile.in: Likewise.
* interception/Makefile.in: Likewise.
* sanitizer_common/Makefile.in: Likewise.

From-SVN: r193534

11 years agoasan.c (report_error_func): Set DECL_IGNORED_P, don't touch DECL_ASSEMBLER_NAME.
Jakub Jelinek [Thu, 15 Nov 2012 13:12:36 +0000 (14:12 +0100)]
asan.c (report_error_func): Set DECL_IGNORED_P, don't touch DECL_ASSEMBLER_NAME.

* asan.c (report_error_func): Set DECL_IGNORED_P, don't touch
DECL_ASSEMBLER_NAME.
(asan_init_func): Likewise.
(asan_finish_file): Use void * instead of __asan_global * as
type of __asan_{,un}register_globals.  Set DECL_IGNORED_P on
the decls.

From-SVN: r193532

11 years agoAdd myself as asan co-reviewer
Dodji Seketeli [Thu, 15 Nov 2012 12:36:50 +0000 (12:36 +0000)]
Add myself as asan co-reviewer

ChangeLog:

* MAINTAINERS: (asan.c, related): Add myself.

From-SVN: r193530

11 years agoMakefile.in (if_multiarch): Don't use a GNU make 3.81 feature.
Matthias Klose [Thu, 15 Nov 2012 11:58:42 +0000 (11:58 +0000)]
Makefile.in (if_multiarch): Don't use a GNU make 3.81 feature.

2012-11-15  Matthias Klose  <doko@ubuntu.com>

        * Makefile.in (if_multiarch): Don't use a GNU make 3.81 feature.

From-SVN: r193529

11 years agotests
Jason Merrill [Thu, 15 Nov 2012 01:54:00 +0000 (20:54 -0500)]
tests

From-SVN: r193527

11 years agore PR c++/37276 (Trouble with some (C99?) math builtins and namespace std)
Jason Merrill [Thu, 15 Nov 2012 01:53:48 +0000 (20:53 -0500)]
re PR c++/37276 (Trouble with some (C99?) math builtins and namespace std)

PR c++/37276
* decl.c (decls_match): Remove #ifdef around earlier fix.

From-SVN: r193526

11 years agoclass.c (finish_struct_1): Check virtual functions for missing ABI tags.
Jason Merrill [Thu, 15 Nov 2012 01:53:37 +0000 (20:53 -0500)]
class.c (finish_struct_1): Check virtual functions for missing ABI tags.

* class.c (finish_struct_1): Check virtual functions
for missing ABI tags.

From-SVN: r193525

11 years agore PR c++/55275 (abi_tag attribute doesn't work on explicit specializations of class...
Jason Merrill [Thu, 15 Nov 2012 01:53:23 +0000 (20:53 -0500)]
re PR c++/55275 (abi_tag attribute doesn't work on explicit specializations of class templates)

PR c++/55275
* pt.c (maybe_process_partial_specialization): Update
DECL_SOURCE_LOCATION for new specializations.

From-SVN: r193524

11 years agore PR libstdc++/53841 ([C++11] condition_variable::wait_until() fails with high resol...
Jonathan Wakely [Thu, 15 Nov 2012 01:38:17 +0000 (01:38 +0000)]
re PR libstdc++/53841 ([C++11] condition_variable::wait_until() fails with high resolution clocks)

PR libstdc++/53841
* include/std/condition_variable (condition_variable::wait_until):
Handle clocks with higher resolution than __clock_t.
(condition_variable::__wait_until_impl): Remove unnecessary _Clock
parameter.
* testsuite/30_threads/condition_variable/members/53841.cc: New.

From-SVN: r193523

11 years agore PR bootstrap/55051 (profiledbootstrap failed)
Jan Hubicka [Thu, 15 Nov 2012 01:07:01 +0000 (02:07 +0100)]
re PR bootstrap/55051 (profiledbootstrap failed)

PR bootstrap/55051
* gcov-io.c (gcov_read_summary): Fix array bound check.

From-SVN: r193522

11 years agoConsider *-*-nacl* targets ELF
Roland McGrath [Thu, 15 Nov 2012 00:38:07 +0000 (00:38 +0000)]
Consider *-*-nacl* targets ELF

* configure.ac (ENABLE_GOLD): Consider *-*-nacl* targets ELF.
* configure: Regenerate.

From-SVN: r193521

11 years agoDaily bump.
GCC Administrator [Thu, 15 Nov 2012 00:18:38 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193519

11 years agoAdd support for multilib run-time libraries
H.J. Lu [Thu, 15 Nov 2012 00:03:37 +0000 (00:03 +0000)]
Add support for multilib run-time libraries

PR other/55291
* configure.ac (--enable-version-specific-runtime-libs): New option.
(AC_CANONICAL_SYSTEM): New.
(AM_ENABLE_MULTILIB): Moved right after AM_INIT_AUTOMAKE.
(toolexecdir): Support multilib.
(toolexeclibdir): Likewise.
(multilib_arg): New.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
* asan/Makefile.in: Likewise.
* interception/Makefile.in: Likewise.
* sanitizer_common/Makefile.in: Likewise.

From-SVN: r193516

11 years agore PR debug/55328 (ICE: in output_addr_table_entry, at dwarf2out.c:21780 with -gsplit...
Sterling Augustine [Wed, 14 Nov 2012 23:36:50 +0000 (23:36 +0000)]
re PR debug/55328 (ICE: in output_addr_table_entry, at dwarf2out.c:21780 with -gsplit-dwarf)

2012-11-14  Sterling Augustine  <saugustine@google.com>

PR debug/55328
* dwarf2out.c (index_address_table_entry): Check a node's refcount.

From-SVN: r193515

11 years agore PR libstdc++/55320 (Invalid delete with throwing copy-c'tor passed to std::function)
Jonathan Wakely [Wed, 14 Nov 2012 23:33:01 +0000 (23:33 +0000)]
re PR libstdc++/55320 (Invalid delete with throwing copy-c'tor passed to std::function)

PR libstdc++/55320
* include/std/functional (function::function(F)): Set _M_manager after
operations that could throw.
(_Function_base::_Ref_manager::_M_init_functor): Use addressof.
* include/tr1/functional
(_Function_base::_Ref_manager::_M_init_functor): Use addressof.
(_Function_base::_Base_manager::_M_get_pointer): Likewise.
* testsuite/20_util/function/cons/55320.cc: New.
* testsuite/20_util/function/cons/addressof.cc: New.
* testsuite/20_util/function/cons/callable.cc: Remove header.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
* testsuite/tr1/3_function_objects/function/10.cc: New.

From-SVN: r193514

11 years agobuiltins.c (define_builtin): Accept ECF flags and use set_call_expr_flags.
Jan Hubicka [Wed, 14 Nov 2012 23:14:05 +0000 (00:14 +0100)]
builtins.c (define_builtin): Accept ECF flags and use set_call_expr_flags.

* builtins.c (define_builtin): Accept ECF flags and
use set_call_expr_flags.
(initialize_builtins): Update.

From-SVN: r193513

11 years agore PR bootstrap/55051 (profiledbootstrap failed)
Jan Hubicka [Wed, 14 Nov 2012 23:03:22 +0000 (00:03 +0100)]
re PR bootstrap/55051 (profiledbootstrap failed)

PR bootstrap/55051
* ipa-inline.c (edge_badness): Improve dumping; fix overflow.

From-SVN: r193512

11 years agoasan-dg.exp: New file.
Jakub Jelinek [Wed, 14 Nov 2012 22:58:01 +0000 (23:58 +0100)]
asan-dg.exp: New file.

* lib/asan-dg.exp: New file.
* gcc.dg/asan/asan.exp: New file.
* g++.dg/dg.exp: Prune also asan tests.
* g++.dg/asan/asan.exp: New file.
* c-c++-common/asan/memcmp-1.c: New test.

From-SVN: r193511

11 years agot-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
Matthias Klose [Wed, 14 Nov 2012 22:45:25 +0000 (22:45 +0000)]
t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

2012-11-14  Matthias Klose  <doko@ubuntu.com>

        * config/sparc/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
        * config/sparc/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <sparc-*-linux*> (tmake_file): Include sparc/t-linux
        for 32bit non-biarch configurations.

From-SVN: r193510

11 years agoabi_tag.cc: Adjust expected demangling for 128bit long-double targets.
Uros Bizjak [Wed, 14 Nov 2012 22:23:51 +0000 (23:23 +0100)]
abi_tag.cc: Adjust expected demangling for 128bit long-double targets.

* testsuite/26_numerics/complex/abi_tag.cc: Adjust expected
demangling for 128bit long-double targets.

From-SVN: r193509

11 years agoinvoke.texi: Document -print-multiarch.
Matthias Klose [Wed, 14 Nov 2012 21:29:15 +0000 (21:29 +0000)]
invoke.texi: Document -print-multiarch.

2012-11-14  Matthias Klose  <doko@ubuntu.com>

        * doc/invoke.texi: Document -print-multiarch.
        * doc/install.texi: Document --enable-multiarch.
        * doc/fragments.texi: Document MULTILIB_OSDIRNAMES, MULTIARCH_DIRNAME.
        * configure.ac: Add --enable-multiarch option.
        * configure: Regenerate.
        * Makefile.in (s-mlib): Pass MULTIARCH_DIRNAME to genmultilib.
        enable_multiarch, with_float: New macros.
        if_multiarch: New macro, define in terms of enable_multiarch.
        * genmultilib: Add new argument for the multiarch name.
        * gcc.c (multiarch_dir): Define.
        (for_each_path): Search for multiarch suffixes.
        (driver_handle_option): Handle multiarch option.
        (do_spec_1): Pass -imultiarch if defined.
        (main): Print multiarch.
        (set_multilib_dir): Separate multilib and multiarch names
        from multilib_select.
        (print_multilib_info): Ignore multiarch names in multilib_select.
        * incpath.c (add_standard_paths): Search the multiarch include dirs.
        * cppdefault.h (default_include): Document multiarch in multilib
        member.
        * cppdefault.c: [LOCAL_INCLUDE_DIR, STANDARD_INCLUDE_DIR] Add an
        include directory for multiarch directories.
        * common.opt: New options --print-multiarch and -imultilib.
        * config.gcc <i[34567]86-*-linux* | x86_64-*-linux*> (tmake_file):
        Include i386/t-linux.
        <i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu> (tmake_file):
        Include i386/t-kfreebsd.
        <i[34567]86-*-gnu*> (tmake_file): Include i386/t-gnu.
        * config/i386/t-linux64: Add multiarch names in
        MULTILIB_OSDIRNAMES, define MULTIARCH_DIRNAME.
        * config/i386/t-gnu: New file.
        * config/i386/t-kfreebsd: Likewise.
        * config/i386/t-linux: Likewise.

From-SVN: r193508

11 years agof95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.
Jan Hubicka [Wed, 14 Nov 2012 21:09:58 +0000 (22:09 +0100)]
f95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.

* f95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.
(gfc_define_builtin): Use set_call_expr_flags.
(gfc_init_builtin_functions): Update.

From-SVN: r193507

11 years agotree.c (set_call_expr_flags): New function.
Jan Hubicka [Wed, 14 Nov 2012 21:08:52 +0000 (22:08 +0100)]
tree.c (set_call_expr_flags): New function.

* tree.c (set_call_expr_flags): New function.
(local_define_builtin): Use it.
* tree.h (set_call_expr_flags): Declare.

From-SVN: r193506

11 years agore PR c++/55323 (ICE in expand_aggr_init_1, at cp/init.c:1718)
Paolo Carlini [Wed, 14 Nov 2012 20:29:07 +0000 (20:29 +0000)]
re PR c++/55323 (ICE in expand_aggr_init_1, at cp/init.c:1718)

/cp
2012-11-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55323
* init.c (emit_mem_initializers): Skip arguments == error_mark_node.

/testsuite
2012-11-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55323
* g++.dg/cpp0x/vt-55323.C: New.

From-SVN: r193505

11 years agore PR c++/11750 (class scope using-declaration lookup not implemented)
Fabien Chêne [Wed, 14 Nov 2012 20:12:47 +0000 (21:12 +0100)]
re PR c++/11750 (class scope using-declaration lookup not implemented)

gcc/testsuite/ChangeLog

2012-11-14  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/11750
* g++.dg/inherit/vitual9.C: New.

gcc/cp/ChangeLog

2012-11-14  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/11750
* call.c (build_new_method_call_1): Check that the instance type
and the function context are the same before setting the flag
LOOKUP_NONVIRTUAL.

From-SVN: r193504

This page took 0.105146 seconds and 5 git commands to generate.