OSDN Git Service

pf3gnuchains/gcc-fork.git
10 years agoenable mdynamic-no-pic bootstrap for x86 Darwin
iains [Thu, 4 Nov 2010 10:43:47 +0000 (10:43 +0000)]
enable mdynamic-no-pic bootstrap for x86 Darwin

* configure.ac (*-*-darwin*): Use mh-darwin for all Darwin variants.
* configure: Regenerate.
* config/mh-ppc-darwin: Rename to mh-darwin.

gcc:

* gcc/configure.ac: Filter -mdynamic-no-pic from CFLAGS when testing for
plugin capabilities.
* gcc/configure: Regenerate.

gcc/testsuite:

* lib/plugin-support.exp (plugin-test-execute): Filter -mdynamic-no-pic from
plugin build flags on Darwin targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166302 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 4 Nov 2010 05:53:05 +0000 (05:53 +0000)]
2010-11-03  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/tuple (tuple): Make default constructors constexpr.
* testsuite/20_util/tuple/cons/constexpr.cc: Add.

* testsuite/18_support/initializer_list/requirements/
constexpr_functions.cc: Add.
* testsuite/18_support/initializer_list/constexpr.cc: Add.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166301 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRequire split_stack target for gcc.target/i386/pr46285.c.
hjl [Thu, 4 Nov 2010 02:44:16 +0000 (02:44 +0000)]
Require split_stack target for gcc.target/i386/pr46285.c.

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/pr46285.c: Require split_stack target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166298 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/46293
jason [Thu, 4 Nov 2010 02:15:08 +0000 (02:15 +0000)]
PR c++/46293
* semantics.c (build_data_member_initialization): Handle
value-init of aggregate empty base.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166297 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/46289
jason [Thu, 4 Nov 2010 02:15:00 +0000 (02:15 +0000)]
PR c++/46289
* call.c (can_convert_array): New fn.
(build_aggr_conv): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166296 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Thu, 4 Nov 2010 00:18:36 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166292 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoIn gcc/c-family/:
nicola [Wed, 3 Nov 2010 23:52:18 +0000 (23:52 +0000)]
In gcc/c-family/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

* c.opt (Wproperty-assign-default): New option.

In gcc/objc/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (objc_add_dynamic_declaration): Allow @dynamic in a
category.
(objc_type_valid_for_messaging): Added 'accept_classes' argument;
if set to 'true', return 'true' for Class objects.  Do not remove
more than on pointer indirection.
(objc_add_property_declaration): Only warn about 'assign'
semantics for Objective-C objects if warn_property_assign_default;
and do not warn if the property is readonly or if the type is a Class.
(objc_finish_foreach_loop): Updated calls to
objc_type_valid_for_messaging.

In gcc/testsuite/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc.dg/property/dynamic-2.m: Updated for the fact that @dynamic
is now allowed in categories.
* obj-c++.dg/property/dynamic-2.mm: Same change.
* objc.dg/property/dynamic-3.m: New.
* obj-c++.dg/property/dynamic-3.mm: New.
* objc.dg/property/at-property-14.m: New.
* objc.dg/property/at-property-15.m: New.
* obj-c++.dg/property/at-property-14.mm: New.
* obj-c++.dg/property/at-property-15.mm: New.

* objc.dg/foreach-6.m: Added a few more tests for valid and
invalid iterating variables and collections.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166287 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/46291
davek [Wed, 3 Nov 2010 23:13:51 +0000 (23:13 +0000)]
PR lto/46291
* lto-plugin.c (claim_file_handler): Don't close file descriptor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166285 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove prot from unix_stream
jb [Wed, 3 Nov 2010 23:07:11 +0000 (23:07 +0000)]
Remove prot from unix_stream

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166284 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago Fix PR/46200
davidxl [Wed, 3 Nov 2010 22:25:53 +0000 (22:25 +0000)]
 Fix PR/46200

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166280 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config.gcc (sh64*) <tm_file>: Add newlib-stdint.h for
kkojima [Wed, 3 Nov 2010 22:05:36 +0000 (22:05 +0000)]
* config.gcc (sh64*) <tm_file>: Add newlib-stdint.h for
newlib targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166279 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/sh/sh.c (sh_expand_prologue): Remove unnecessary
kkojima [Wed, 3 Nov 2010 22:03:30 +0000 (22:03 +0000)]
* config/sh/sh.c (sh_expand_prologue): Remove unnecessary
comment.  Pass true to the last argument of output_stack_adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166278 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoSet use_avx256_p if 256bit AVX register is used in vector move.
hjl [Wed, 3 Nov 2010 21:16:36 +0000 (21:16 +0000)]
Set use_avx256_p if 256bit AVX register is used in vector move.

gcc/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR target/46295
* config/i386/i386.c (ix86_expand_vector_move): Set use_avx256_p
if 256bit AVX register is used.

gcc/testsuite/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR target/46295
* gcc.target/i386/pr46295.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166277 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove unused empty_internal_buffer function
jb [Wed, 3 Nov 2010 20:49:31 +0000 (20:49 +0000)]
Remove unused empty_internal_buffer function

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166276 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoAdd SF min/max under VSX, using the normal double operations
meissner [Wed, 3 Nov 2010 20:35:34 +0000 (20:35 +0000)]
Add SF min/max under VSX, using the normal double operations

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166273 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/46289
jason [Wed, 3 Nov 2010 19:13:27 +0000 (19:13 +0000)]
PR c++/46289
* semantics.c (build_constexpr_constructor_member_initializers):
Avoid ICE on error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166270 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * combine.c (try_combine): Fix formatting issues, improve comments and
ebotcazou [Wed, 3 Nov 2010 17:53:51 +0000 (17:53 +0000)]
* combine.c (try_combine): Fix formatting issues, improve comments and
fix a pasto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166263 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Wed, 3 Nov 2010 17:49:05 +0000 (17:49 +0000)]
2010-11-03  Thomas Koenig  <tkoenig@gcc.gnu.org>
    Paul Thomas  <pault@gcc.gnu.org>

* dump-parse-tree.c (code_indent):  Take label into acount
when calculating indent.
(show_typespec):  Also display class.
(show_attr):  Add module name to argument.
Don't show UNKNOWN for flavor, access and save. Don't show
SAVE_NONE.  Don't show INTENT_UNKNOWN.  Show module for use
association.  Show intent only for dummy arguments.
Set length of shown symbol names to minimum of 12.
Show attributes header.
(show_symbol):  Adjust show_level.
(show_symtree):  Clear up display for ambiguous.  Show if symbol
was imported from namespace.
(show_code_node):  Clear up indenting.  Traverse symtree and
show code directly instead of calling show_namespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166262 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 3 Nov 2010 17:33:54 +0000 (17:33 +0000)]
2010-11-03  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/limits (__glibcxx_digits10, __glibcxx_max_digits10):
Use 643L instead of 643 to avoid overflows on 16-bit machines.
* include/ext/numeric_traits.h (__glibcxx_max_digits10): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166261 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * tree-tailcall.c (find_tail_calls): Convert the operands to the type
ebotcazou [Wed, 3 Nov 2010 17:33:31 +0000 (17:33 +0000)]
* tree-tailcall.c (find_tail_calls): Convert the operands to the type
of the result before building binary expressions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166260 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRevert revision 164552.
hjl [Wed, 3 Nov 2010 17:07:04 +0000 (17:07 +0000)]
Revert revision 164552.

gcc/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/45865
* Makefile.in (df-problems.o): Revert revision 164552.
* basic-block.h (enum bb_flags): Likewise.
* cfgcleanup.c (block_was_dirty): Likewise.
(try_forward_edges): Likewise.
(try_crossjump_bb): Likewise.
(try_head_merge_bb): Likewise.
(try_optimize_cfg): Likewise.
(cleanup_cfg): Likewise.
* df-core.c (df_set_bb_dirty): Likewise.
* df-problems.c: Likewise.
(df_simulate_find_uses): Likewise.
(MEMREF_NORMAL, MEMREF_VOLATILE): Likewise.
(find_memory, find_memory_store): Likewise.
(can_move_insns_across): Likewise.
* df.h (can_move_insns_across): Likewise.
* ifcvt.c (find_memory): Likewise.
(dead_or_predicable): Likewise.

gcc/testsuite/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR rtl-optimization/45865
* gcc.dg/pr45865.c: New.
* gcc.dg/torture/pr45865.c: Likewise.

* gcc.target/arm/headmerge-1.c: Revert revision 164552.
* gcc.target/arm/headmerge-2.c: Likewise.
* gcc.target/i386/headmerge-1.c: Likewise.
* gcc.target/i386/headmerge-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166259 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 16:58:50 +0000 (16:58 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/46288
* predict.c (strip_predict_hints): Simply DCE builtin expect if
the result is unused.

* gcc.dg/pr46288.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166258 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 15:55:34 +0000 (15:55 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44807
* gcc.dg/torture/pr44807.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166256 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove unused tf_no_class_instantiations enum member
dodji [Wed, 3 Nov 2010 15:41:49 +0000 (15:41 +0000)]
Remove unused tf_no_class_instantiations enum member

gcc/cp/ChangeLog:
* cp-tree.h (enum tsubst_flags)<tf_no_class_instantiations>:
Remove.
* pt.c (tsubst): Remove the use of tf_no_class_instantiations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166255 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR c++/46277
jason [Wed, 3 Nov 2010 15:33:05 +0000 (15:33 +0000)]
PR c++/46277
* init.c (expand_default_init): Avoid ICE if we can't figure out
which function is being called.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166254 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 3 Nov 2010 15:27:48 +0000 (15:27 +0000)]
2010-11-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/43899
* gfortran.dg/namelist_67.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166253 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 3 Nov 2010 15:22:25 +0000 (15:22 +0000)]
2010-11-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/43899
* runtime/error.c (generate_warning): New function to generate a run
time warning message. Fix some whitespace.
* libgfortran.h: Add prototype for new function.
* io/list_read.c (nml_read_obj): Use new function to warn when a
character namelist object is truncated.  Only warn if compiled
with -fbounds-check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166252 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR tree-optimization/46009
jakub [Wed, 3 Nov 2010 15:18:50 +0000 (15:18 +0000)]
PR tree-optimization/46009
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Call
cond_if_else_store_replacement if bb1 and bb2 have the same
single successor.
(cond_store_replacement): Use gimple_assign_single_p, don't
check if rhs is SSA_NAME or invariant.  Call release_defs for
assign.
(cond_if_else_store_replacement): New function.

* gcc.dg/vect/pr46009.c: New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166251 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 15:00:52 +0000 (15:00 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

* opts.c (finish_options): Properly check for all WHOPR
flags before complaining about -flto-partition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166250 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
amodra [Wed, 3 Nov 2010 13:52:32 +0000 (13:52 +0000)]
* config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
(rs6000_emit_load_toc_table): Don't use rs6000_pic_labelno when
TARGET_SECURE_PLT.
* config/rs6000/sysv4.h (rs6000_pic_labelno): Don't declare.
* config/rs6000/rs6000.md (load_toc_v4_PIC_3b): Use "b" constraint
on input, "r" on output.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166247 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoIn gcc/:
nicola [Wed, 3 Nov 2010 13:39:39 +0000 (13:39 +0000)]
In gcc/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented -fobjc-std=objc1 flag.
        * doc/invoke.texi (Option Summary): Document -fobjc-std=objc1
        option.
        * doc/standards.texi (Standards): Updated the section on
        Objective-C; mention support for Objective-C 2.0 features and the
        new -fstd-objc=objc1 flag to disable them.

In gcc/c-family/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented -fobjc-std=objc1 flag.
        * c.opt (fobjc-std=objc1): New option.

In gcc/objc/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented -fobjc-std=objc1 flag.
        * objc-act.c (objc_start_class_interface): If attributes are
        specified when flag_objc1_only is set, print an error.
        (objc_start_category_interface): Same change.
        (objc_start_protocol): Same change.
        (objc_add_method_declaration): Same change.
        (objc_start_method_definition): Same change.
        (objc_build_keyword_decl): Same change.
        (objc_set_method_opt): If flag_objc1_only is set, print an error.
        (objc_add_property_declaration): Same change.
        (objc_add_synthesize_declaration): Same change.
        (objc_add_dynamic_declaration): Same change.
        (objc_finish_foreach_loop): Same change.
        (objc_maybe_build_component_ref): If flag_objc1_only is set,
        return immediately.

In gcc/testsuite/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented -fobjc-std=objc1 flag.
        * objc.dg/fobjc-std-1.m: New.
        * obj-c++.dg/fobjc-std-1.mm: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166246 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 13:31:40 +0000 (13:31 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/46241
* dwarf2out.c (scope_die_for): Properly detect global scope.

* g++.dg/debug/pr46241.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166245 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 13:30:48 +0000 (13:30 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46190
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment):
Properly compute peel iterations.

* gfortran.dg/pr46190.f90: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166244 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 13:16:02 +0000 (13:16 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR testsuite/46274
* gcc.dg/tree-ssa/gen-vect-11a.c: Fix operator precedence.
* gcc.dg/vect/vect-19.c: Likewise.
* gcc.dg/vect/vect-17.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166243 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix last entry.
hjl [Wed, 3 Nov 2010 12:50:42 +0000 (12:50 +0000)]
Fix last entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166242 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 12:20:28 +0000 (12:20 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46286
* tree-ssa-structalias.c (get_constraint_for_1): Avoid referencing
re-allocated vector data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166241 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoGenerate avx_vzeroupper after reload is completed.
hjl [Wed, 3 Nov 2010 12:02:06 +0000 (12:02 +0000)]
Generate avx_vzeroupper after reload is completed.

gcc/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR target/46285
* config/i386/i386.c (ix86_expand_call): Conditionally decorate
calls with UNSPEC_CALL_NEEDS_VZEROUPPER unspec before reload
is completed.

gcc/testsuite/

2010-11-03  H.J. Lu  <hongjiu.lu@intel.com>

PR target/46285
* gcc.target/i386/pr46285.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166240 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 11:05:39 +0000 (11:05 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46217
* tree-ssa.c (non_rewritable_mem_ref_base): Check if volatile
flag matches.
(execute_update_addresses_taken): Likewise.

* gcc.dg/pr46217.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166239 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR bootstrap/44335
amylaar [Wed, 3 Nov 2010 10:45:40 +0000 (10:45 +0000)]
PR bootstrap/44335
gcc:
* targhooks.c (targhook_words_big_endian): New function.
(targhook_float_words_big_endian): Likewise.
* targhooks.h (targhook_words_big_endian): Declare.
(targhook_float_words_big_endian): Likewise.
* target.def (words_big_endian, float_words_big_endian): New hooks.
gcc/java:
* jfc-parse.c (target.h): Include.
(handle_constant): Use targetm.words_big_endian and
targetm.float_words_big_endian.
(get_constant): Use targetm.float_words_big_endian.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166238 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoIn gcc/objc/:
nicola [Wed, 3 Nov 2010 10:39:15 +0000 (10:39 +0000)]
In gcc/objc/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-act.c (maybe_make_artificial_property_decl): New.
        (objc_maybe_build_component_ref): Call
        maybe_make_artificial_property_decl if a property can not be
        found.  Do not call objc_finish_message_expr if
        PROPERTY_HAS_NO_GETTER.
        * objc-act.h Updated comments.
        (PROPERTY_HAS_NO_GETTER): New.
        (PROPERTY_HAS_NO_SETTER): New.
        * objc-tree.def: Updated comment.

In gcc/testsuite/:
2010-11-03  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/property/dotsyntax-1.m: New.
        * objc.dg/property/dotsyntax-2.m: New.
        * obj-c++.dg/property/dotsyntax-1.mm: New.
        * obj-c++.dg/property/dotsyntax-2.mm: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166237 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR tree-optimization/46165
jakub [Wed, 3 Nov 2010 10:34:34 +0000 (10:34 +0000)]
PR tree-optimization/46165
* tree-ssa-pre.c (eliminate): Return TODO_cleanup_cfg if changing
a normal call into noreturn call.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166236 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-03 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 3 Nov 2010 09:57:13 +0000 (09:57 +0000)]
2010-11-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/46251
* builtins.c (expand_builtin_sincos): Properly build MEM_REFs,
not INDIRECT_REFs.

* gcc.dg/pr46251.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166235 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR tree-optimization/46107
jakub [Wed, 3 Nov 2010 09:49:16 +0000 (09:49 +0000)]
PR tree-optimization/46107
* cfgloopmanip.c (loop_version): Set irred_flag back into entry->flags
if cfg_hook_duplicate_loop_to_header_edge failed.

* gcc.c-torture/compile/pr46107.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166234 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoChangeLog:
davek [Wed, 3 Nov 2010 09:14:32 +0000 (09:14 +0000)]
ChangeLog:

2010-11-03  Ian Lance Taylor  <iant@google.com>
    Dave Korn  <dave.korn.cygwin@gmail.com>

PR lto/46273
* configure.ac: Remove libelf tests.  Build lto-plugin on ELF always
and on other supported platforms whenever LTO is enabled.
* configure: Rebuild.

gcc/ChangeLog:

2010-11-03  Ian Lance Taylor  <iant@google.com>

PR lto/46273
* gcc/config.gcc: Don't set lto_binary_reader.
* doc/install.texi (Prerequisites): Remove libelf paragraphs.
(Configuration): Mention --disable-lto.  Remove --with-libelf
paragraph.

lto-plugin/ChangeLog:

2010-11-03  Dave Korn  <dave.korn.cygwin@gmail.com>

PR lto/46273
* lto-plugin.h: Delete.
* lto-plugin-elf.c: Likewise.
* lto-plugin-coff.c: Likewise.
* configure.ac: Don't use libelf, don't source config.gcc.
(LIBELFLIBS): Delete.
(LIBELFINC): Delete.
(LTO_FORMAT): Delete.
(SYM_STYLE): Add AC_DEFINE var, set based on $target.
(config.h): Add AC_CONFIG_HEADERS directive.
* Makefile.am (LIBELFLIBS): Delete.
(LIBELFINC): Delete.
(LTO_FORMAT): Delete.
(DEFS): Import.
(AM_CPPFLAGS): Use it.  Don't use LIBELFINC.
(liblto_plugin_la_SOURCES): Don't use LTO_FORMAT, don't include
any object-format-specific source file in the link.
(liblto_plugin_la_LIBADD): Don't use LIBELFLIBS.
* config.h.in: Generate.
* configure: Regenerate.
* Makefile.in: Likewise.
* lto-plugin.c (O_BINARY): Definition moved here from lto-plugin.h.
(LTO_SEGMENT_NAME): New definition.
(LTO_SECTION_PREFIX): Definition moved here from lto-plugin.h.
(LTO_SECTION_PREFIX_LEN): New definition.
(struct sym_aux): Struct definition moved here from lto-plugin.h.
(struct plugin_symtab): Likewise.
(struct plugin_objfile): Likewise.
(struct plugin_objfile): New struct def.
(enum symbol_style): New enum type.
(add_symbols): Make static.
(claimed_files): Likewise.
(num_claimed_files): Likewise.
(sym_style): New global.
(check): Make static.
(parse_table_entry): Likewise.  Respect sym_style when extracting
symbol from symtab entry.
(translate): Make static.
(resolve_conflicts): Likewise.
(process_symtab): New function, per-section callback version of
old object-format-specific handling from deleted lto-plugin-elf.c.
(claim_file_handler): Convert ELF-specific version from deleted
lto-plugin-elf.c to simple_object interface and move here.
(process_options): Allow new '-sym-style=' option.
(onload): Don't call deleted onload_format_checks hook.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166233 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR debug/46252
jakub [Wed, 3 Nov 2010 08:38:42 +0000 (08:38 +0000)]
PR debug/46252
* reload1.c (delete_dead_insn): Use prev_active_insn instead of
prev_real_insn.
* gcse.c (insert_insn_end_basic_block): Likewise.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166232 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR rtl-optimization/46034
jakub [Wed, 3 Nov 2010 08:30:21 +0000 (08:30 +0000)]
PR rtl-optimization/46034
PR rtl-optimization/46212
PR rtl-optimization/46248
* combine.c (try_combine): If added_sets_2 where i0dest_in_i0src
and i0 feeds i1 and i1 feeds i2 or i0 feeds i2, make a copy of i1src
before i0dest -> i0src substitution and pass 1 instead of 0 as last
argument to subst on i2pat.

* gcc.c-torture/compile/pr46034.c: New test.
* gcc.c-torture/compile/pr46248.c: New test.
* gcc.dg/pr46212.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166231 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/:
ian [Wed, 3 Nov 2010 02:45:25 +0000 (02:45 +0000)]
gcc/:
* configure.ac: Use AC_SYS_LARGEFILE.
* configure: Rebuild.
* config.in: Rebuild.
libcpp/:
* configure.ac: Use AC_SYS_LARGEFILE.
* configure: Rebuild.
* config.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166230 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 3 Nov 2010 01:59:07 +0000 (01:59 +0000)]
2010-11-02  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/chrono: Use typedefs.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166229 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 3 Nov 2010 01:56:28 +0000 (01:56 +0000)]
2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cmath (fpclassify, isfinite, isinf, isnan,
isnormal, signbit, isgreater, isgreaterequal, isless, islessequal,
islessgreater, isunordered): Remove spurious duplicate definition
added in the last commit.

* include/tr1/cmath: Remove tr1_impl leftover macro.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166228 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agogcc/
froydnj [Wed, 3 Nov 2010 00:49:00 +0000 (00:49 +0000)]
gcc/
* builtins.c (fold_builtin_signbit): Use build_zero_cst instead of
fold_convert.
* c-typeck.c (build_function_call_vec): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* cgraphunit.c (assemble_thunk): Likewise.
* config/sparc/sparc.c (sparc_fold_builtin): Likewise.
* fold-const.c (fold_unary_loc, fold_mult_zconjz): Likewise.
(fold_binary_loc, fold_ternary_loc): Likewise.
* gimple-fold.c (get_symbol_constant_value): Likewise.
* gimple-low.c (lower_builtin_setjmp): Likewise.
* gimple.c (gimple_cond_get_ops_from_tree): Likewise.
* gimplify.c (gimplify_init_constructor): Likewise.
* lambda.h (build_linear_expr): Likewise.
* omp-low.c (omp_reduction_init): Likewise.
* tree-inline.c (remap_ssa_name): Likewise.
* tree-object-size.c (compute_object_sizes): Likewise.
* tree-sra.c (init_subtree_with_zero): Likewise.
(sra_ipa_modify_assign): Likewise.
* tree-ssa-copy.c (propagate_tree_value_into_stmt): Likewise.
* tree-ssa-reassoc.c (eliminate_duplicate_pair): Likewise.
(eliminate_plus_minus_pair, eliminate_not_pairs): Likewise.
(undistribute_ops_list): Likewise.
* tree-ssa-sccvn.c (vn_reference_lookup_3): Likewise.
* tree-vect-stmts.c (vectorizable_call): Likewise.
* tree.c (build_vector_from_ctor, build_one_cst): Likewise.
(build_zero_cst): Handle more cases directly.  Update comment.

gcc/cp/
* class.c (build_base_path, add_vcall_offset): Use build_zero_cst
instead of fold_convert.
* init.c (build_zero_init): Likewise.
* typeck.c (cp_build_binary_op): Likewise.

gcc/fortran/
* trans-decl.c (add_argument_checking): Use build_zero_cst instead of
fold_convert.
* trans-expr.c (gfc_conv_missing_dummy, fill_with_spaces): Likewise.
* trans-stmt.c (gfc_trans_do): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166227 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoDaily bump.
gccadmin [Wed, 3 Nov 2010 00:17:18 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166226 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * gcc-interface/gigi.h (add_stmt_force): Declare.
ebotcazou [Wed, 3 Nov 2010 00:15:51 +0000 (00:15 +0000)]
* gcc-interface/gigi.h (add_stmt_force): Declare.
(add_stmt_with_node_force): Likewise.
* gcc-interface/trans.c (Attribute_to_gnu): Don't set TREE_SIDE_EFFECTS
on the SAVE_EXPR built for cached expressions of parameter attributes.
(Subprogram_Body_to_gnu): Force evaluation of the SAVE_EXPR built for
cached expressions of parameter attributes.
(add_stmt_force): New function.
(add_stmt_with_node_force): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166222 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRemove ix86_split_call_pop_vzeroupper.
hjl [Tue, 2 Nov 2010 22:02:52 +0000 (22:02 +0000)]
Remove ix86_split_call_pop_vzeroupper.

2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386-protos.h (ix86_split_call_pop_vzeroupper):
Removed.
* config/i386/i386.c (ix86_split_call_pop_vzeroupper): Likewise.

* config/i386/i386.md (*call_pop_0_vzeroupper): Use parallel
and call ix86_split_call_vzeroupper instead of
ix86_split_call_pop_vzeroupper.
(*call_pop_1_vzeroupper): Likewise.
(*sibcall_pop_1_vzeroupper): Likewise.
(*call_value_pop_0_vzeroupper): Likewise.
(*call_value_pop_1_vzeroupper): Likewise.
(*sibcall_value_pop_1_vzeroupper): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166218 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix a typo in *sibcall_1_rex64_vzeroupper.
hjl [Tue, 2 Nov 2010 21:34:10 +0000 (21:34 +0000)]
Fix a typo in *sibcall_1_rex64_vzeroupper.

2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (*sibcall_1_rex64_vzeroupper): Fix a
typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166215 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * basic-block.h (insert_insn_end_bb_new): Delete.
ebotcazou [Tue, 2 Nov 2010 19:31:59 +0000 (19:31 +0000)]
* basic-block.h (insert_insn_end_bb_new): Delete.
* cfgrtl.c (insert_insn_end_bb_new): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166212 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 2 Nov 2010 18:51:23 +0000 (18:51 +0000)]
2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/tr1_impl/cinttypes: Remove, move contents to C++0x
and TR1 headers.
* include/tr1_impl/cstdlib: Likewise.
* include/tr1_impl/cstdio: Likewise.
* include/tr1_impl/cctype: Likewise.
* include/tr1_impl/boost_sp_counted_base.h: Likewise.
* include/tr1_impl/cmath: Likewise.
* include/tr1_impl/cfenv: Likewise.
* include/tr1_impl/utility: Likewise.
* include/tr1_impl/complex: Likewise.
* include/tr1_impl/cwchar: Likewise.
* include/tr1_impl/type_traits: Likewise.
* include/tr1_impl/cstdint: Likewise.
* include/tr1_impl/regex: Likewise.
* include/tr1_impl/array: Likewise.
* include/tr1_impl/cwctype: Likewise.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* src/condition_variable.cc: Adjust; consistently use
_GLIBCXX_BEGIN_NAMESPACE and _GLIBCXX_END_NAMESPACE.
* src/mutex.cc: Likewise.
* src/future.cc: Likewise.
* src/atomic.cc: Likewise.
* src/chrono.cc: Likewise.
* src/thread.cc: Likewise.
* include/std/tuple: Likewise.
* include/std/utility: Likewise.
* include/std/thread: Likewise.: Likewise.
* include/std/type_traits: Likewise.
* include/std/memory: Likewise.
* include/std/future: Likewise.
* include/std/ratio: Likewise.
* include/std/chrono: Likewise.
* include/std/condition_variable: Likewise.
* include/std/mutex: Likewise.
* include/std/functional: Likewise.
* include/std/complex: Likewise.
* include/std/typeindex: Likewise.
* include/std/array: Likewise.
* include/bits/regex_compiler.h: Likewise.
* include/bits/regex_grep_matcher.tcc: Likewise.
* include/bits/regex_grep_matcher.h: Likewise.
* include/bits/regex_constants.h: Likewise.
* include/bits/regex_cursor.h: Likewise.
* include/bits/regex_nfa.tcc: Likewise.
* include/bits/shared_ptr_base.h: Likewise.
* include/bits/regex_nfa.h: Likewise.
* include/bits/random.tcc: Likewise.
* include/bits/regex.h: Likewise.
* include/bits/random.h: Likewise.
* include/bits/regex_error.h: Likewise.
* include/c_global/cinttypes: Likewise.
* include/c_global/cstdlib: Likewise.
* include/c_global/cstdio: Likewise.
* include/c_global/cctype: Likewise.
* include/c_global/cmath: Likewise.
* include/c_global/cfenv: Likewise.
* include/c_global/cwchar: Likewise.
* include/c_global/cstdint: Likewise.
* include/c_global/cwctype: Likewise.
* include/tr1/shared_ptr.h: Likewise.
* include/tr1/cinttypes: Likewise.
* include/tr1/cstdio: Likewise.
* include/tr1/cfenv: Likewise.
* include/tr1/utility: Likewise.
* include/tr1/cwchar: Likewise.
* include/tr1/type_traits: Likewise.
* include/tr1/memory: Likewise.
* include/tr1/cstdint: Likewise.
* include/tr1/regex: Likewise.
* include/tr1/cwctype: Likewise.
* include/tr1/cstdlib: Likewise.
* include/tr1/cctype: Likewise.
* include/tr1/cmath: Likewise.
* include/tr1/complex: Likewise.
* include/tr1/array: Likewise.
* include/c_compatibility/fenv.h: Likewise.
* include/c_compatibility/stdint.h: Likewise.
* include/c_compatibility/inttypes.h: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820.cc: Adjust
dg-error line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/
typedefs_neg.cc: Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
* testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166211 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Paolo Carlini <paolo.carlini@oracle.com
paolo [Tue, 2 Nov 2010 18:25:55 +0000 (18:25 +0000)]
2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com

* testsuite/28_regex/05_constants/syntax_option_type.cc: Avoid
-Wall warnings.
* testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc:
Likewise.
* testsuite/18_support/numeric_limits/requirements/
constexpr_functions.cc: Likewise.
* testsuite/18_support/numeric_limits/requirements/
constexpr_data.cc: Likewise.
* testsuite/21_strings/char_traits/requirements/
constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/independent_bits_engine/requirements/
constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/
requirements/constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/subtract_with_carry_engine/
requirements/constexpr_data.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/requirements/
constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/discard_block_engine/requirements/
constexpr_data.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/
requirements/constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/mersenne_twister_engine/
requirements/constexpr_data.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/linear_congruential_engine/
requirements/constexpr_data.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/
requirements/constexpr_functions.cc: Likewise.
* testsuite/26_numerics/random/shuffle_order_engine/
requirements/constexpr_data.cc: Likewise.
* testsuite/26_numerics/complex/requirements/
constexpr_functions.cc: Likewise.
* testsuite/23_containers/bitset/requirements/
constexpr_functions.cc: Likewise.
* testsuite/23_containers/array/requirements/
constexpr_functions.cc: Likewise.
* testsuite/util/testsuite_common_types.h: Likewise.
* testsuite/20_util/duration/requirements/
constexpr_functions.cc: Likewise.
* testsuite/20_util/duration_cast/constexpr.cc: Likewise.
* testsuite/20_util/time_point/requirements/
constexpr_functions.cc: Likewise.
* testsuite/20_util/ratio/requirements/constexpr_data.cc: Likewise.

* testsuite/tr1/4_metaprogramming/integral_constant/
requirements/constexpr_data.cc: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166210 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * ChangeLog: Fix last commit entry.
uros [Tue, 2 Nov 2010 18:21:01 +0000 (18:21 +0000)]
* ChangeLog: Fix last commit entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166209 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoEmit vzerouppers after reload.
hjl [Tue, 2 Nov 2010 18:08:44 +0000 (18:08 +0000)]
Emit vzerouppers after reload.

gcc/

2010-11-02  Uros Bizjak  <ubizjak@gmail.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386-protos.h (ix86_split_call_vzeroupper): New.
(ix86_split_call_pop_vzeroupper): Likewise.

* config/i386/i386.c (move_or_delete_vzeroupper_2): Rewrite
the loop.
(ix86_expand_call): Use UNSPEC_CALL_NEEDS_VZEROUPPER.
(ix86_split_call_vzeroupper): New.
(ix86_split_call_pop_vzeroupper): Likewise.

* config/i386/i386.md (UNSPEC_CALL_NEEDS_VZEROUPPER): New.
(*call_pop_0_vzeroupper): Likewise.
(*call_pop_1_vzeroupper): Likewise.
(*sibcall_pop_1_vzeroupper): Likewise.
(*call_0_vzeroupper): Likewise.
(*call_1_vzeroupper): Likewise.
(*sibcall_1_vzeroupper): Likewise.
(*call_1_rex64_vzeroupper): Likewise.
(*call_1_rex64_ms_sysv_vzeroupper): New.
(*call_1_rex64_large_vzeroupper): Likewise.
(*sibcall_1_rex64_vzeroupper): Likewise.
(*call_value_pop_0_vzeroupper): New.
(*call_value_pop_1_vzeroupper): Likewise.
(*sibcall_value_pop_1_vzeroupper): Likewise.
(*call_value_0_vzeroupper): New.
(*call_value_0_rex64_vzeroupper): Use
(*call_value_0_rex64_ms_sysv_vzeroupper): Likewise.
(*call_value_1_vzeroupper): Likewise.
(*sibcall_value_1_vzeroupper): Likewise.
(*call_value_1_rex64_vzeroupper): Likewise.
(*call_value_1_rex64_ms_sysv_vzeroupper): Likewise.
(*call_value_1_rex64_large_vzeroupper): Likewise.
(*sibcall_value_1_rex64_vzeroupper): Likewise.

gcc/testsuite/

2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/avx-vzeroupper-15.c: New.
* gcc.target/i386/avx-vzeroupper-16.c: Likewise.
* gcc.target/i386/avx-vzeroupper-17.c: Likewise.
* gcc.target/i386/avx-vzeroupper-18.c: Likewise.

PR target/46253
* gcc.target/i386/pr46253.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166208 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR lto/46273
ian [Tue, 2 Nov 2010 17:58:45 +0000 (17:58 +0000)]
PR lto/46273
* config.gcc: Revert last patch: set lto_binary_reader.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166207 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * include/bits/atomic_0.h (_ATOMIC_CMPEXCHNG_): Use C-style cast.
jason [Tue, 2 Nov 2010 17:39:59 +0000 (17:39 +0000)]
* include/bits/atomic_0.h (_ATOMIC_CMPEXCHNG_): Use C-style cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166206 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Steven G. Kargl < kargl@gcc.gnu.org>
burnus [Tue, 2 Nov 2010 17:09:58 +0000 (17:09 +0000)]
2010-11-02  Steven G. Kargl  < kargl@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/45170
        * array.c (gfc_match_array_constructor): Reject deferred type
        parameter (DTP) in type-spec.
        * decl.c (char_len_param_value, match_char_length,
        gfc_match_char_spec, build_sym, variable_decl,
        enumerator_decl): Support DTP.
        * expr.c (check_inquiry): Fix check due to support for DTP.
        * gfortran.h (gfc_typespec): Add Boolean 'deferred'.
        * misc.c (gfc_clear_ts): Set it to false.
        * match.c (gfc_match_allocate): Support DTP.
        * resolve.c (resolve_allocate_expr): Not-implemented error for
        * DTP.
        (resolve_fl_variable): Add DTP constraint check.
        * trans-decl.c (gfc_trans_deferred_vars): Add not-implemented
        error for DTP.

2010-11-02  Steven G. Kargl  < kargl@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/45170
        * gfortran.dg/deferred_type_param_1.f90: New.
        * gfortran.dg/deferred_type_param_2.f90: New.
        * gfortran.dg/initialization_1.f90: Update dg-errors.
        * gfortran.dg/initialization_9.f90: Update dg-errors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166205 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 2 Nov 2010 17:00:09 +0000 (17:00 +0000)]
2010-11-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46149
* tree-ssa-structalias.c (get_constraint_for_1): Properly handle
non-indirect MEM_REF variants.

* g++.dg/torture/pr46149.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166204 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 2 Nov 2010 16:58:40 +0000 (16:58 +0000)]
2010-11-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46216
* tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_vars):
Check if we can propagate from a POINTER_PLUS_EXPR before doing so.

* gcc.dg/torture/pr46216.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166203 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * configure.ac (*-*-irix6*): Disable set_have_as_tls.
ro [Tue, 2 Nov 2010 16:27:26 +0000 (16:27 +0000)]
* configure.ac (*-*-irix6*): Disable set_have_as_tls.
(*-*-osf*): Likewise.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166200 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/45693
ro [Tue, 2 Nov 2010 16:16:22 +0000 (16:16 +0000)]
PR target/45693
* configure.host (osf*): Set os_include_dir to os/generic.
Add -lpthread to OPT_LDFLAGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166199 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR target/46131
ro [Tue, 2 Nov 2010 16:07:04 +0000 (16:07 +0000)]
PR target/46131
* lib/target-supports.exp (add_options_for_tls): Pass -pthread for
*-*-osf*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166198 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoUpdate -march=native/-mtune=native for Intel Core 2 and Core i7.
hjl [Tue, 2 Nov 2010 16:05:18 +0000 (16:05 +0000)]
Update -march=native/-mtune=native for Intel Core 2 and Core i7.

2010-11-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/driver-i386.c (host_detect_local_cpu): Updated
for Intel Core 2 and Core i7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166197 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago Model decoder of Core 2/i7 for multipass scheduling.
mkuvyrkov [Tue, 2 Nov 2010 16:02:09 +0000 (16:02 +0000)]
Model decoder of Core 2/i7 for multipass scheduling.

* config/i386/i386-protos.h (struct ix86_first_cycle_multipass_data_):
New type to hold target-specific data for multipass scheduling.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
* config/i386/i386.c (ia32_multipass_dfa_lookahead): Update for
Core 2/i7.
(core2i7_secondary_decoder_max_insn_size,)
(core2i7_secondary_ifetch_block_size, core2i7_ifetch_block_max_insns):
New static variables.
([const_]ix86_first_cycle_multipass_data_t): New typedefs.
([_]ix86_first_cycle_multipass_data): New static variable.
(core2i7_first_cycle_multipass_init, core2i7_dfa_poast_advance_cycle):
Implement targetm.sched hooks.
(core2i7_first_cycle_multipass_filter_ready_try): New static subroutine
of ...
(core2i7_first_cycle_multipass_{begin, issue, backtrack, end, fini}):
Implement new targetm.sched hooks.
(ix86_sched_init_global, TARGET_SCHED_INIT_GLOBAL): Define
targetm.sched hook to install multipass scheduling hooks on demand.

* doc/tm.texi.in: Document new targetm.sched hooks.
* doc/tm.texi: Regenerate.

* haifa-sched.c (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DATA_T): Define.
(first_cycle_multipass_data_t): New typedef.
(struct choice_entry: target_data): New field.
(max_issue): Add first_cycle_insn_p parameter.  Call new target hooks
to allow target model restrictions not represented in DFA.
(choose_ready, schedule_block): Update.
(sched_extend_ready_list, sched_finish_ready_list): Call new target
hooks to initialize target-specific data for multipass scheduling.
* sched-int.h (max_issue): Update declaration.
* sel-sched.c (choose_best_insn): Update.
* target.def (first_cycle_multipass_{begin, issue, backtrack},)
(first_cycle_multipass_{init, fini}): Define and document new
targetm.sched hooks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166196 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 2 Nov 2010 15:52:09 +0000 (15:52 +0000)]
2010-11-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/bitset (_Base_bitset<>_Base_bitset(unsigned long long)):
Convert __val to _WordT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166195 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 2 Nov 2010 15:46:46 +0000 (15:46 +0000)]
2010-11-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46184
* tree-vect-loop.c (vectorizable_reduction): Try to obtain the
input vector type from the reduction operand as well.

* gcc.dg/pr46184.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166194 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 2 Nov 2010 15:45:26 +0000 (15:45 +0000)]
2010-11-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/46177
* tree-loop-distribution.c (prop_phis): Use
mark_virtual_phi_result_for_renaming.

* gcc.dg/pr46177.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166193 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 2 Nov 2010 15:22:52 +0000 (15:22 +0000)]
2010-11-02  Martin Jambor  <mjambor@suse.cz>

PR middle-end/46120
* tree.c (get_binfo_at_offset): Bail out on artificial
fields. Identify primary bases according to their offsets.

* testsuite/g++.dg/ipa/ivinline-9.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166192 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoTrivial cleanup of ChangeLog entry
dodji [Tue, 2 Nov 2010 15:15:12 +0000 (15:15 +0000)]
Trivial cleanup of ChangeLog entry

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166191 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 2 Nov 2010 15:06:21 +0000 (15:06 +0000)]
2010-11-02  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/45875
* gimple-fold.c (get_first_base_binfo_with_virtuals): Removed.
(gimple_get_relevant_ref_binfo): Detect primary bases according to
their field offset.

* testsuite/g++.dg/torture/pr45875.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166190 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * configure.ac: Remove elf_getshdrstrndx test. Don't substitute
ian [Tue, 2 Nov 2010 14:53:15 +0000 (14:53 +0000)]
* configure.ac: Remove elf_getshdrstrndx test.  Don't substitute
LTO_BINARY_READER or LTO_USE_LIBELF.  Remove LIBELFLIBS and
LIBELFINC.  Remove HAVE_libelf.
* config.gcc: Don't set lto_binary_reader.
* Makefile.in (LIBELFLIBS, LIBELFINC): Remove variables.
(LTO_BINARY_READER, LTO_USE_LIBELF): Remove variables.
(LIBS): Remove $(LIBELFLIBS).
(INCLUDES): Remove $(LIBELFINC).
* configure: Rebuild.
* config.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166189 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/microblaze/microblaze-protos.h (function_arg): Delete.
froydnj [Tue, 2 Nov 2010 14:50:28 +0000 (14:50 +0000)]
* config/microblaze/microblaze-protos.h (function_arg): Delete.
(function_arg_advance): Delete.
* config/microblaze/microblaze.h (FUNCTION_ARG_ADVANCE): Delete.
(FUNCTION_ARG): Delete.
* config/microblaze/microblaze.c (function_arg_advance): Rename to...
(microblaze_function_arg_advance): ...this.  Make static.  Take a
const_tree and a bool.
(function-arg): Rename to...
(microblaze_function_arg): ...this.  Make static.  Take a const_tree
and a bool.
(microblaze_expand_prologue): Call targetm.calls.function_arg and
targetm.calls.function_arg_advance.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166188 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * lto-object.c: New file.
ian [Tue, 2 Nov 2010 14:48:34 +0000 (14:48 +0000)]
* lto-object.c: New file.
* lto-elf.c: Remove file.
* lto-macho.c: Remove file.
* lto-macho.h: Remove file.
* lto-coff.c: Remove file.
* lto-coff.h: Remove file.
* Make-lang.in (LTO_OBJS): Change lto/$(LTO_BINARY_READER).o to
lto/lto-object.o.
($(LTO_EXE)): Remove $(LTO_USE_LIBELF)
(lto/lto-objfile.o): New target.
(lto/lto-elf.o, lto/lto-coff.o, lto/lto-macho.o): Remove targets.
(lto/lto.o): Remove $(LIBIBERTY_H).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166187 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoinclude/:
ian [Tue, 2 Nov 2010 14:40:44 +0000 (14:40 +0000)]
include/:
* simple-object.h: New file.
libiberty/:
* simple-object.c: New file.
* simple-object-common.h: New file.
* simple-object-elf.c: New file.
* simple-object-mach-o.c: New file.
* simple-object-coff.c: New file.
* simple-object.txh: New file.
* configure.ac: Add AC_TYPE_SSIZE_T.
* Makefile.in: Rebuild dependencies.
(CFILES): Add simple-object.c, simple-object-coff,
simple-object-elf.c, and simple-object-mach-o.c.
(REQUIRED_OFILES): Add corresponding object files.
* configure: Rebuild.
* config.in: Rebuild.
* functions.texi: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166185 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoupdate darwin x86 output.
iains [Tue, 2 Nov 2010 14:40:03 +0000 (14:40 +0000)]
update darwin x86 output.

gcc:
Merge from FSF "apple/trunk" branch.

* config/rs6000/darwin.opt (mdynamic-no-pic): move from here ...
* config/darwin.opt: .. to here.
(matt-stubs): New option.
* config/i386/darwin.opt: Delete.
* config/i386/i386.h (MACHOPIC_ATT_STUB): New.
(MACHO_DYNAMIC_NO_PIC_P): New.
(MACHOPIC_INDIRECT): New.
(MACHOPIC_PURE): New.
* config/i386/darwin.h (DARWIN_X86) Define to 1.
(MACHOPIC_ATT_STUB): New.
(CC1_SPEC): Do not remove mdynamic-no-pic.
Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
(FUNCTION_PROFILER): Correct over-length line.
(SUBTARGET_OVERRIDE_OPTIONS): New.
(MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
* config/i386/i386.c (config/i386/i386.c): Darwin has no PLT.
(legitimate_constant_p): Handle mdynamic-no-pic.
(ix86_legitimate_address_p): Likewise.
(ix86_legitimize_address): Likewise.
(ix86_expand_move): Likewise.
(machopic_output_stub): Update for ATT-style stubs and
mdynamic-no-pic.
* config/darwin-protos.h (machopic_symbol_defined_p): New.
* config/rs6000/darwin.h (DARWIN_PPC): Define to 1.
TARGET_DYNAMIC_NO_PIC: Remove.
Move HOT_TEXT_SECTION_NAME: move to config/darwin.h
UNLIKELY_EXECUTED_TEXT_SECTION_NAME: Likewise.
* config/rs6000/rs6000.c (darwin_rs6000_override_options):
Remove handling of mdynamic-no-pic.
* config/darwin.c (HAVE_lo_sum, gen_macho_high, gen_macho_low):
Define if required.
(machopic_symbol_defined_p): Do not try to use current_function_decl
when generating _get_pc thunks within stubs.
(machopic_indirect_data_reference): Rework for direct conditionals
rather than #ifdefs, add x86 mdynamic-no-pic
(machopic_legitimize_pic_address): Update to use HAVE_lo_sum with a
defined value.
(darwin_override_options): Handle mdynamic-no-pic here.
* config/darwin-sections.def (machopic_lazy_symbol_ptr2_section): New.
(machopic_lazy_symbol_ptr3_section): New.
(machopic_picsymbol_stub2_section): New.
(machopic_picsymbol_stub3_section): New.
* config/darwin.h (DARWIN_X86, DARWIN_PPC): Define to 0.
(MACHOPIC_NL_SYMBOL_PTR_SECTION): New.
(HOT_TEXT_SECTION_NAME, UNLIKELY_EXECUTED_TEXT_SECTION_NAME):
Moved common definition from x86 and rs6000.
(MACHO_DYNAMIC_NO_PIC_P): Override value.
(MACHOPIC_INDIRECT): Likewise.
(MACHOPIC_PURE): Likewise.
* config.gcc (x86-darwin-*): Remove darwin.opt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166184 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago2010-11-02 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 2 Nov 2010 14:34:53 +0000 (14:34 +0000)]
2010-11-02  Richard Guenther  <rguenther@suse.de>

PR testsuite/46249
* gcc.dg/tree-ssa/ssa-ccp-32.c: Fix operator precedence.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166183 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR debug/46255
jakub [Tue, 2 Nov 2010 13:00:39 +0000 (13:00 +0000)]
PR debug/46255
* tree-cfg.c (gimple_flow_call_edges_add): Use gsi_last_nondebug_bb
instead of gsi_last_bb.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166182 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoFix PR c++/46170, c++/46162
dodji [Tue, 2 Nov 2010 12:58:48 +0000 (12:58 +0000)]
Fix PR c++/46170, c++/46162

gcc/cp/ChangeLog:
PR c++/46170
PR c++/46162
* pt.c (check_valid_ptrmem_cst_expr): Add a complain parameter to
control diagnostic.
(convert_nontype_argument, convert_nontype_argument): Pass the
complain parameter down to check_valid_ptrmem_cst_expr.

gcc/testsuite/ChangeLog:
PR c++/46170
PR c++/46162
* g++.dg/template/sfinae26.C: New test.
* g++.dg/template/sfinae27.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166181 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoPR 45629 Remove usage of setjmp/longjmp
jb [Tue, 2 Nov 2010 12:56:38 +0000 (12:56 +0000)]
PR 45629 Remove usage of setjmp/longjmp

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166180 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoRestore canonical type comparison for dependent type(def)s
dodji [Tue, 2 Nov 2010 12:44:19 +0000 (12:44 +0000)]
Restore canonical type comparison for dependent type(def)s

This patch restores canonical type comparison for dependent types and
then dependent typedefs. After this patch, two template type
parameters T are equal if they have the same index, level, *and*
number of sibling parameters. The novelty is to take in account the
number of sibling parameters.

To do this we first build the template parameters w/o taking in
account their number of siblings. When we know the number of template
parameters we fix up each template parameter with the number of
slibling parameters and we build the appropriate canonical types
accordingly. The patch fixes the fallouts deemed necessary.

This fixes PR c++/45606 but actually fixes all the previous bugs
related to dependent typedef comparison we had since we started to
properly representing dependent typedefs.

gcc/cp/ChangeLog:
PR c++/45606
* cp-tree.h (TEMPLATE_TYPE_PARM_SIBLING_PARMS): Remove.
(struct template_parm_index_s)<num_siblings>: New field.
(TEMPLATE_PARM_NUM_SIBLINGS): New accessor.
(process_template_parm): Extend the API to accept the number of
template parms in argument.
(cp_set_underlying_type): Remove this.
* class.c (build_self_reference): Require canonical type equality
back on the self reference of class.
* decl2.c (grokfield): Require canonical type equality back on
typedef class fields.
* name-lookup.c (pushdecl_maybe_friend): Require canonical type
equality back on typedefs.
* parser.c (cp_parser_template_parameter_list): Do not require
canonical type equality on dependent types created during
template parameters parsing.
* pt.c (fixup_template_type_parm_type, fixup_template_parm_index)
(fixup_template_parm, fixup_template_parms): New private
functions.
(current_template_args): Declare this.
(process_template_parm): Pass the total number of template parms
to canonical_type_parameter.
(build_template_parm_index): Add a new argument to carry the total
number of template parms.
(reduce_template_parm_level, process_template_parm, make_auto): Adjust.
(current_template_args): Fix this for template template
parameters.
(tsubst_template_parm): Split out of ...
(tsubst_template_parms): ... this.
(reduce_template_parm_level): Don't loose
TEMPLATE_PARM_NUM_SIBLINGS when cloning a TEMPLATE_PARM_INDEX.
(template_parm_to_arg): Extracted this function from
current_template_args. Make it represent invalid template parms
with an error_mark_node instead of a LIST_TREE containing an
error_mark_node.
(current_template_args): Use template_parm_to_arg.
(dependent_template_arg_p): Consider an invalid template argument
as dependent.
(end_template_parm_list): Do not update template sibling parms
here anymore. Use fixup_template_parms instead.
(process_template_parm): Pass the number of template parms to
canonical_type_parameter.
(make_auto): Require structural equality on auto
TEMPLATE_TYPE_PARM for now.
(unify)<BOUND_TEMPLATE_TEMPLATE_PARM>: Coerce template parameters
using all the arguments deduced so far.
(tsubst)<TEMPLATE_TYPE_PARM>: Pass the number of sibling parms to
canonical_type_parameter.
* tree.c (cp_set_underlying_type): Remove.
* typeck.c (get_template_parms_of_dependent_type)
(incompatible_dependent_types_p): Remove.
(structural_comptypes): Do not call incompatible_dependent_types_p
anymore.
(comp_template_parms_position): Re-organized. Take the length of
template parms list in account.

gcc/testsuite/ChangeLog:
PR c++/45606
* g++.dg/template/typedef36.C: New test.
* gcc/testsuite/g++.dg/template/canon-type-9.C: Likewise.
* g++.dg/template/canon-type-10.C: Likewise.
* g++.dg/template/canon-type-11.C: Likewise.
* g++.dg/template/canon-type-12.C: Likewise.
* g++.dg/template/canon-type-13.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166179 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * config/i386/i386.c (cpu_names): Add "corei7".
mkuvyrkov [Tue, 2 Nov 2010 12:40:42 +0000 (12:40 +0000)]
* config/i386/i386.c (cpu_names): Add "corei7".
* config/i386/i386.h (enum target_cpu_default): Add entry for Core i7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166178 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago Tune alignment for Intel Core i7
mkuvyrkov [Tue, 2 Nov 2010 12:34:02 +0000 (12:34 +0000)]
Tune alignment for Intel Core i7

* config/i386.h (TARGET_COREI7{_32,_64,}): New macros.
(enum processor_type): Update comment.  Add entries for Core i7.
* config/i386-c.c (ix86_target_macros_internal): Update.
* config/i386.c (m_COREI7{_32,_64}): New macros.
(m_GENERIC32, m_GENERIC64): Use generic tuning for Core i7.
(processor_target_table): Tune alignment for Core i7.
(ix86_option_override_internal): Use PROCESSOR_COREI7_*.

* doc/invoke.texi: Document "corei7" option value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166177 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago Basic support for Intel Core i7
mkuvyrkov [Tue, 2 Nov 2010 12:30:26 +0000 (12:30 +0000)]
Basic support for Intel Core i7

* i386.c (ix86_option_override_internal): Add entry for corei7, use
generic tuning.  Use generic32 when compiling for 32-bit ABI.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166176 138bc75d-0d04-0410-961f-82ee72b054a4

10 years agoimprove darwin section ordering between debug/non-debug cases.
iains [Tue, 2 Nov 2010 11:14:42 +0000 (11:14 +0000)]
improve darwin section ordering between debug/non-debug cases.

gcc:

* config/darwin.c (darwin_asm_named_section): Check for __DWARF
sections and call darwin_asm_dwarf_section() to handle them.
(darwin_asm_dwarf_section): New.
(darwin_file_start): Remove code emitting dwarf section symbols.

testsuite:

* g++.dg/debug/dwarf2/pubnames-1.C: Amend to check for only one instance
of debug_pubnames on darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166174 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * Makefile.in (LIBGCC2_CFLAGS): Add -fno-stack-protector, to
cltang [Tue, 2 Nov 2010 10:34:54 +0000 (10:34 +0000)]
* Makefile.in (LIBGCC2_CFLAGS): Add -fno-stack-protector, to
explicitly disable stack protection when building libgcc.
(CRTSTUFF_CFLAGS): Same, for crtbegin/end.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166173 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * include/std/chrono: Extend constexpr application.
jason [Tue, 2 Nov 2010 02:35:28 +0000 (02:35 +0000)]
* include/std/chrono: Extend constexpr application.
* testsuite/util/testsuite_common_types.h
(constexpr_default_constructible, constexpr_single_value_constructible)
: Add comments about implied constraints.
* testsuite/20_util/duration/cons/constexpr.cc: Activate all tests.
* testsuite/20_util/time_point/cons/constexpr.cc: Same.
* testsuite/20_util/time_point/requirements/constexpr_functions.cc:
Same.
* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
numbers.
* testsuite/20_util/time_point_cast/constexpr.cc: New.

* include/std/bitset: Use __SIZEOF_* macros to re-create original
logic instead of slipshod application of
std::numeric_limits<T>::max() macros.
* testsuite/util/testsuite_common_types.h
(constexpr_default_constructible): Modify.

* include/std/chrono: Tested constexpr.
* testsuite/20_util/duration_cast/constexpr.cc: New.
* testsuite/20_util/time_point/cons/constexpr.cc: New.

* testsuite/20_util/duration/cons/constexpr.cc: Add single_value tests.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/time_point/cons/constexpr.cc: Add single_value
tests.
* testsuite/20_util/time_point/requirements/constexpr_functions.cc: Add.

* testsuite/util/testsuite_common_types.h: Adjust init.

* include/std/chrono (duration): Remove defaulted constructor,
replace with mem-init list.
* testsuite/20_util/duration/cons/constexpr.cc: Add single value.
* testsuite/20_util/duration/requirements/constexpr_functions.cc:
Add non-static member functions.

* testsuite/20_util/default_delete/cons/constexpr.cc: New, xfail.
* testsuite/20_util/enable_shared_from_this/cons/constexpr.cc: Same.
* testsuite/20_util/shared_ptr/cons/constexpr.cc: Same.
* testsuite/20_util/time_point/requirements/constexpr_functions.cc:
Same.
* testsuite/20_util/unique_ptr/cons/constexpr.cc: Same.
* testsuite/20_util/weak_ptr/cons/constexpr.cc: Same.

* include/std/bitset: Add constexpr as per N3126 draft.
* testsuite/23_containers/bitset/cons/constexpr.cc: New.
* testsuite/23_containers/bitset/requirements/constexpr_functions.cc:
New.

* testsuite/util/testsuite_common_types.h: Reset condition.

* include/bits/random.h: Remove misleading comments.
* include/bits/regex.h: Add constexpr.
* testsuite/28_regex/05_constants/syntax_option_type.cc: Add tests.
* testsuite/28_regex/08_basic_regex/requirements/constexpr_data.cc: New.

PR libstdc++/46134
* include/std/chrono: Use default constructor.
* testsuite/util/testsuite_common_types.h
(constexpr_default_constructible): Adjust condition.

PR libstdc++/46133
* include/std/complex: Adjust complex specialization default
constructors for constexpr.
* testsuite/26_numerics/complex/cons/constexpr.cc: Enable tests.

* include/bits/random.h: Adjust for constexpr as per N3126 draft.
* testsuite/26_numerics/random/discard_block_engine/requirements/
constexpr_data.cc: New.
* testsuite/26_numerics/random/discard_block_engine/requirements/
constexpr_functions.cc: New.
* testsuite/26_numerics/random/independent_bits_engine/requirements/
constexpr_functions.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
constexpr_data.cc: New.
* testsuite/26_numerics/random/linear_congruential_engine/requirements/
constexpr_functions.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
constexpr_data.cc: New.
* testsuite/26_numerics/random/mersenne_twister_engine/requirements/
constexpr_functions.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
constexpr_data.cc: New.
* testsuite/26_numerics/random/shuffle_order_engine/requirements/
constexpr_functions.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
constexpr_data.cc: New.
* testsuite/26_numerics/random/subtract_with_carry_engine/requirements/
constexpr_functions.cc: New.

* include/bits/stream_iterator.h: Add constexpr as per N3126 draft.
* include/bits/streambuf_iterator.h: Same.
* include/std/complex: Same.
* testsuite/24_iterators/istream_iterator/cons/constexpr.cc: New.
* testsuite/24_iterators/istreambuf_iterator/cons/constexpr.cc: New.
* testsuite/26_numerics/complex/cons/constexpr.cc: New.
* testsuite/26_numerics/complex/requirements/constexpr_functions.cc:
New.

* include/bits/char_traits.h: Add constexpr as per N3126 draft.
* testsuite/21_strings/char_traits/requirements/constexpr_functions.cc:
New.

* include/tr1_impl/array: Add constexpr as per N3126 draft.
* testsuite/23_containers/array/requirements/
constexpr_functions.cc: New.

* include/bits/shared_ptr.h: Revert changes.
* include/bits/unique_ptr.h: Same.

* include/std/chrono: Adjust.
* include/tr1_impl/type_traits: Same.

* testsuite/util/testsuite_common_types.h: Add test functors.
* testsuite/20_util/duration/cons/constexpr.cc: New.
* testsuite/20_util/duration/requirements/constexpr_functions.cc: Same.
* testsuite/20_util/pair/cons/constexpr.cc: Same.
* testsuite/20_util/ratio/requirements/constexpr_data.cc: Same.
* testsuite/27_io/ios_base/types/fmtflags/constexpr_operators.cc: Same.
* testsuite/27_io/ios_base/types/iostate/constexpr_operators.cc: Same.
* testsuite/27_io/ios_base/types/openmode/constexpr_operators.cc: Same.
* testsuite/30_threads/call_once/constexpr.cc: Same.
* testsuite/30_threads/mutex/cons/constexpr.cc: Same.
* testsuite/30_threads/once_flag/cons/constexpr.cc: Same.
* testsuite/tr1/4_metaprogramming/integral_constant/requirements/
constexpr_data.cc: Same.

* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.

* include/bits/allocator.h: Add constexpr as per N3126 draft.
* include/bits/ios_base.h: Same.
* include/bits/shared_ptr.h: Same.
* include/bits/unique_ptr.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_pair.h: Same.
* include/std/tuple: Same.
* include/tr1_impl/type_traits: Same.
* include/std/chrono: Same.
* include/std/ratio: Same.
* include/std/mutex: Same.
* src/mutex.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.

* doc/doxygen/user.cfg.in: Replace _GLIBCXX_USE_CONSTEXPR,
_GLIBCXX_CONSTEXPR for doxygen generation.

* src/limits.cc: Undef.
* testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust.
* testsuite/29_atomics/atomic_address/cons/constexpr.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.c: Same.
* testsuite/18_support/numeric_limits/constexpr.cc: To...
* testsuite/18_support/numeric_limits/requirements/
constexpr_data.cc, constexpr_functions.cc: ...this

* testsuite/util/testsuite_common_types.h
(constexpr_single_value_constructible): Add.
* testsuite/29_atomics/atomic/cons/constexpr.cc: Adjust name.
* testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
* testsuite/29_atomics/atomic_address/cons/constexpr.cc: New.
* testsuite/18_support/numeric_limits/constexpr.cc: New.

* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
* testsuite/29_atomics/atomic/cons/constexpr.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/constexpr.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc: Same.
* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc: Same.

* include/bits/c++config (_GLIBCXX_CONSTEXPR): Add.
(_GLIBCXX_USE_CONSTEXPR): Add.
* include/std/limits: Use it.
* src/limits.cc: Adjust.
* testsuite/ext/profile/mutex_extensions.cc: Change line number.

* include/bits/atomic_0.h: Rework for N3126 draft, add constexpr.
* include/bits/atomic_2.h: Same.
* include/bits/atomic_base.h: Same.
* include/std/atomic: Same.
* src/atomic.cc: Same.
* include/bits/atomicfwd_c.h: Remove.
* include/bits/atomicfwd_cxx.h: Remove.
* include/c_compatibility/stdatomic.h: Remove.
* include/Makefile.am: Remove atomicfwd_c.h, atomicfwd_cxx.h,
stdatomic.h.
* include/Makefile.in: Regenerate.
* doc/xml/manual/using.xml: Update list of header files for changes.
* testsuite/util/testsuite_common_types.h
(constexpr_constructible): Add.
* testsuite/29_atomics/atomic/cons/constexpr.cc: New.
* testsuite/29_atomics/atomic_integral/cons/constexpr.cc: New.
* testsuite/17_intro/headers/c++200x/stdc++.cc: Modify.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/1.cc: Same.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Same.
* testsuite/29_atomics/headers/atomic/macros.cc: Same.
* testsuite/29_atomics/headers/atomic/types_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Remove.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same.
* testsuite/29_atomics/atomic_flag/clear/1.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/functions.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/types.c: Same.

* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166171 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * libsupc++/initializer_list: Decorate with constexpr.
jason [Tue, 2 Nov 2010 01:31:50 +0000 (01:31 +0000)]
* libsupc++/initializer_list: Decorate with constexpr.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166170 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * semantics.c (call_stack, call_stack_tick, cx_error_context): New.
jason [Tue, 2 Nov 2010 01:31:40 +0000 (01:31 +0000)]
* semantics.c (call_stack, call_stack_tick, cx_error_context): New.
(last_cx_error_tick, push_cx_call_context, pop_cx_call_context): New.
(cxx_eval_call_expression): Call push/pop_cx_call_context instead
of giving follow-on errors.
* error.c (maybe_print_constexpr_context): New.
(cp_diagnostic_starter): Call it.
* cp-tree.h: Declare cx_error_context.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166169 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * semantics.c (cxx_eval_constant_expression): Explain
jason [Tue, 2 Nov 2010 01:31:31 +0000 (01:31 +0000)]
* semantics.c (cxx_eval_constant_expression): Explain
unacceptable use of variable better.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166168 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * call.c (null_ptr_cst_p): Use maybe_constant_value.
jason [Tue, 2 Nov 2010 01:31:18 +0000 (01:31 +0000)]
* call.c (null_ptr_cst_p): Use maybe_constant_value.
(set_up_extended_ref_temp): Support constant initialization.
(initialize_reference): Adjust.
* class.c (check_bitfield_decl): Use cxx_constant_value.
* cvt.c (ocp_convert): Don't use integral_constant_value when
converting to class type.
* decl.c (finish_case_label): Use maybe_constant_value.
(build_init_list_var_init): Support constant initialization.
(check_initializer): Likewise.  Reorganize.
(cp_finish_decl): Likewise.
(expand_static_init): Likewise.
(compute_array_index_type): Use maybe_constant_value.
Add complain parm.
(create_array_type_for_decl, grokdeclarator): Pass it.
(build_enumerator): Use cxx_constant_value.
* decl2.c (grokfield): Use maybe_constant_init.
* except.c (check_noexcept_r): Handle constexpr.
(build_noexcept_spec): Use maybe_constant_value.
* init.c (expand_default_init): Support constant initialization.
(build_vec_init): Likewise.
(constant_value_1): Adjust.
(build_new_1): Adjust.
* parser.c (cp_parser_constant_expression): Allow non-integral
in C++0x mode.
(cp_parser_direct_declarator): Don't fold yet in C++0x mode.
(cp_parser_initializer_clause): Toss folded result if non-constant.
* pt.c (fold_decl_constant_value): Remove.
(convert_nontype_argument): Use maybe_constant_value.  Give clearer
error about overflow.
(tsubst): Move array bounds handling into compute_array_index_type.
(value_dependent_expression_p): Handle constant CALL_EXPR.
* semantics.c (finish_static_assert): Use maybe_constant_value.
(ensure_literal_type_for_constexpr_object): Make sure type is complete.
(potential_constant_expression): Use maybe_constant_value.
* tree.c (cast_valid_in_integral_constant_expression_p): Any cast
is potentially valid in C++0x.
* typeck2.c (store_init_value): Handle constant init.
(check_narrowing): Use maybe_constant_value.
(build_functional_cast): Set TREE_CONSTANT on literal T().
* cp-tree.h (DECL_INTEGRAL_CONSTANT_VAR_P): Remove.
(LOOKUP_ALREADY_DIGESTED): New.
(compute_array_index_type): Adjust prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166167 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * semantics.c (constexpr_call): New datatype.
jason [Tue, 2 Nov 2010 01:31:02 +0000 (01:31 +0000)]
* semantics.c (constexpr_call): New datatype.
(constexpr_call_table): New global table.
(constexpr_call_hash): New.
(constexpr_call_equal): Likewise.
(maybe_initialize_constexpr_call_table): Likewise.
(lookup_parameter_binding): Likewise.
(cxx_eval_builtin_function_call): Likewise.
(cxx_bind_parameters_in_call): Likewise.
(cxx_eval_call_expression): Likewise.
(cxx_eval_unary_expression): Likewise.
(cxx_eval_binary_expression): Likewise.
(cxx_eval_conditional_expression): Likewise.
(cxx_eval_array_reference): Likewise.
(cxx_eval_component_reference): Likewise.
(cxx_eval_logical_expression): Likewise.
(cxx_eval_object_construction): Likewise.
(cxx_eval_constant_expression): Likewise.
(cxx_eval_indirect_ref): Likewise.
(cxx_constant_value): Likewise.
(cxx_eval_bare_aggregate): Likewise.
(adjust_temp_type): New.
(reduced_constant_expression_p): New.
(verify_constant): New.
(cxx_eval_vec_init, cxx_eval_vec_init_1): New.
(cxx_eval_outermost_constant_expr): New.
(maybe_constant_value, maybe_constant_init): New.
(cxx_eval_constant_expression): Use them.
* cp-tree.h: Declare fns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166166 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * cp-tree.h (register_constexpr_fundef): Declare.
jason [Tue, 2 Nov 2010 01:30:51 +0000 (01:30 +0000)]
* cp-tree.h (register_constexpr_fundef): Declare.
* decl.c (maybe_save_function_definition): New.
(finish_function): Use it.
* semantics.c (constexpr_fundef): New datatype.
(constexpr_fundef_table): New global table.
(constexpr_fundef_equal): New.
(constexpr_fundef_hash): Likewise.
(retrieve_constexpr_fundef): Likewise.
(validate_constexpr_fundecl): Store in the table.
(build_data_member_initialization): New fn.
(build_constexpr_constructor_member_initializers): New.
(register_constexpr_fundef): Define.
(is_this_parameter): New.
(get_function_named_in_call): Likewise.
(get_nth_callarg): Likewise.
(check_automatic_or_tls): New.
(morally_constexpr_builtin_function_p): New.
(potential_constant_expression): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166165 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * decl2.c (decl_constant_var_p): New fn.
jason [Tue, 2 Nov 2010 01:30:39 +0000 (01:30 +0000)]
* decl2.c (decl_constant_var_p): New fn.
(decl_maybe_constant_var_p): New fn.
(mark_used): Rework instantiation of things needed for constant
expressions.
* cp-tree.h: Declare new fns.
* pt.c (instantiate_decl): Handle cp_unevaluated_operand.
(always_instantiate_p): Use decl_maybe_constant_var_p.
(instantiate_decl): Don't defer constexpr functions.
* repo.c (repo_emit_p): Use decl_maybe_constant_var_p.
* semantics.c (finish_id_expression): Use decl_constant_var_p.
Check for valid name in constant expr after mark_used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166164 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago * fold-const.c (fold_indirect_ref_1): Handle folding
jason [Tue, 2 Nov 2010 01:20:42 +0000 (01:20 +0000)]
* fold-const.c (fold_indirect_ref_1): Handle folding
POINTER_PLUS_EXPR to ARRAY_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166163 138bc75d-0d04-0410-961f-82ee72b054a4

10 years ago PR binutils/12110
amodra [Tue, 2 Nov 2010 00:20:35 +0000 (00:20 +0000)]
PR binutils/12110
* configure.ac: Error when source path contains spaces.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166162 138bc75d-0d04-0410-961f-82ee72b054a4