- 30 Mar, 2007 10 commits
-
-
gcc/ * config/i386/cygming.h (DWARF2_DEBUGGING_INFO): Enable by default for 64-bit. (PREFERRED_DEBUGGING_TYPE): Prefer dwarf2 for 64-bit. (TARGET_64BIT_MS_ABI): New. (DBX_REGISTER_NUMBER): Handle 64-bit. (SIZE_TYPE, PTRDIFF_TYPE): Use long long for 64-bit. (LONG_TYPE_SIZE): Force to 32. (REG_PARM_STACK_SPACE): New. (OUTGOING_REG_PARM_STACK_SPACE): New. (REGPARM_MAX, SSE_REGPARM_MAX): New. (HANDLE_PRAGMA_PUSH_POP_MACRO): New. (STACK_BOUNDARY): Use 128 for 64-bit. * config/i386/cygwin.asm: Use push/ret to preserve call stack. Add 64-bit implementation. * config/i386/gthr-win32.c (__gthr_win32_key_create): Mark dtor argument unused. * config/i386/i386.c (x86_64_ms_abi_int_parameter_registers): New. (override_options): Set ix86_cmodel for TARGET_64BIT_MS_ABI. Warn for -mregparm, -mrtd in 64-bit mode; force ix86_regparm for 64-bit; use TARGET_SUBTARGET64_DEFAULT. (ix86_handle_cconv_attribute): Don't warn when ignoring if TARGET_64BIT_MS_ABI. (ix86_function_arg_regno_p): Handle TARGET_64BIT_MS_ABI. (ix86_pass_by_reference): Likewise. (ix86_function_value_regno_p): Likewise. (ix86_build_builtin_va_list): Likewise. (ix86_va_start, ix86_gimplify_va_arg): Likewise. (function_arg_advance_ms_64): New. (function_arg_advance): Call it. (function_arg_ms_64): New. (function_arg): Call it. (function_value_ms_64): New. (ix86_function_value_1): Call it. (return_in_memory_ms_64): New. (ix86_return_in_memory): Call it. (setup_incoming_varargs_ms_64): New. (ix86_setup_incoming_varargs): Call it. (ix86_expand_prologue): Handle 64-bit stack probing. (legitimize_pic_address): Handle TARGET_64BIT_MS_ABI. (output_pic_addr_const): Likewise. (x86_this_parameter): Likewise. (x86_output_mi_thunk): Likewise. (x86_function_profiler): Likewise. (TARGET_STRICT_ARGUMENT_NAMING): New. * config/i386/i386.h (TARGET_SUBTARGET64_DEFAULT): New. (TARGET_64BIT_MS_ABI): New. (CONDITIONAL_REGISTER_USAGE): Handle TARGET_64BIT_MS_ABI. * config/i386/i386.md (allocate_stack_worker): Remove. (allocate_stack_worker_32): Rename from allocate_stack_worker_1; describe the clobber of eax without a match_scratch. (allocate_stack_worker_postreload): Remove. (allocate_stack_worker_64): Rename from allocate_stack_worker_rex64; describe the clobbers of rax, r10, r11 properly; use __chkstk symbol. (allocate_stack_worker_rex64_postreload): Remove. (allocate_stack): Handle 64-bit. * config/i386/i386elf (TARGET_SUBTARGET_DEFAULT): Remove. * config/i386/mingw32.h (TARGET_VERSION): Set correctly for 64-bit. (EXTRA_OS_CPP_BUILTINS): Handle 64-bit. (STANDARD_INCLUDE_DIR): Handle TARGET_64BIT_DEFAULT. (STANDARD_STARTFILE_PREFIX_1): Likewise. * config/i386/unix.h (TARGET_SUBTARGET64_DEFAULT): New. * config.build (x86_64-*-mingw*): New host. * config.host (x86_64-*-mingw*): New host. * config.gcc (x86_64-*-mingw*): New target. * gthr-win32.h (__gthread_key_create): Mark dtor unused. libgcc/ * config.host (x86_64-*-mingw*): New target. Co-Authored-By: Kai Tietz <kai.tietz@onevision.com> From-SVN: r123372
Richard Henderson committed -
* tree-ssa-loop-ivopts.c: Include target.h. (produce_memory_decl_rtl): Pass the rtx through encode_section_info. (get_address_cost): Force SYMBOL_FLAG_LOCAL set. (force_expr_to_var_cost): Use produce_memory_decl_rtl. * Makefile.in (tree-ssa-loop-ivopts.o): Depend on TARGET_H. From-SVN: r123371
Richard Henderson committed -
libcpp/ * directives.c (lex_macro_node_from_str): New. (cpp_push_definition, cpp_pop_definition): New. * include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare. gcc/ * c-pragma.c (struct def_pragma_macro_value): New. (struct def_pragma_macro): New. (pushed_macro_table): New. (dpm_hash, dpm_eq): New. (handle_pragma_push_macro, handle_pragma_pop_macro): New. (init_pragma): Install them. * doc/tm.texi (HANDLE_PRAGMA_PUSH_POP_MACRO): New. Co-Authored-By: Kai Tietz <kai.tietz@onevision.com> From-SVN: r123370
Richard Henderson committed -
* config/avr/avr.c (avr_override_options): Clear 'flag_delete_null_pointer_checks'. From-SVN: r123367
Anatoly Sokolov committed -
gcc/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN, RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY, RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR, RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR, RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF, RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM, RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as C++ extensions. * doc/extend.texi (Extensions to the C++ Language): Add Type Traits. gcc/cp/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * cp-tree.h (enum cp_trait_kind, struct tree_trait_expr, TRAIT_EXPR_TYPE1, TRAIT_EXPR_TYPE2, TRAIT_EXPR_KIND): Add. (enum cp_tree_node_structure_enum, union lang_tree_node): Update. (CLASS_TYPE_NON_UNION_P): Add. (struct lang_type_class): Add has_complex_dflt. (TYPE_HAS_COMPLEX_DFLT, TYPE_HAS_TRIVIAL_DFLT): Add. (locate_copy, locate_ctor, locate_dtor, finish_trait_expr): Declare. * cp-tree.def: Add TRAIT_EXPR. * cp-objcp-common.c (cp_tree_size): Add TRAIT_EXPR case. * lex.c (struct resword): Add __has_nothrow_assign, __has_nothrow_constructor, __has_nothrow_copy, __has_trivial_assign, __has_trivial_constructor, __has_trivial_copy, __has_trivial_destructor, __has_virtual_destructor, __is_abstract, __is_base_of, __is_class, __is_convertible_to, __is_empty, __is_enum, __is_pod, __is_polymorphic, __is_union. * parser.c (cp_parser_primary_expression): Deal with the new RIDs. (cp_parser_trait_expr): New. * semantics.c (finish_trait_expr, trait_expr_value classtype_has_nothrow_copy_or_assign_p): New. * method.c (locate_copy, locate_ctor, locate_dtor): Do not define as static. * decl.c (cp_tree_node_structure): Add TRAIT_EXPR. * class.c (check_bases, check_field_decl, check_bases_and_members): Deal with TYPE_HAS_COMPLEX_DFLT (t) too. * pt.c (uses_template_parms, tsubst_copy_and_build, value_dependent_expression_p, type_dependent_expression_p): Deal with TRAIT_EXPR. * tree.c (cp_walk_subtrees): Deal with TRAIT_EXPR. gcc/testsuite/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * g++.dg/ext/is_base_of.C: New. * g++.dg/ext/has_virtual_destructor.C: New. * g++.dg/ext/is_polymorphic.C: New. * g++.dg/ext/is_base_of_diagnostic.C: New. * g++.dg/ext/is_enum.C: New. * g++.dg/ext/has_nothrow_assign.C: New. * g++.dg/ext/has_nothrow_constructor.C: New. * g++.dg/ext/is_empty.C: New. * g++.dg/ext/has_trivial_copy.C: New. * g++.dg/ext/has_trivial_assign.C: New. * g++.dg/ext/is_abstract.C: New. * g++.dg/ext/is_pod.C: New. * g++.dg/ext/has_nothrow_copy.C: New. * g++.dg/ext/is_class.C: New. * g++.dg/ext/has_trivial_constructor.C: New. * g++.dg/ext/is_union.C: New. * g++.dg/ext/has_trivial_destructor.C: New. * g++.dg/tree-ssa/pr22444.C: Adjust, avoid __is_pod. * g++.dg/template/crash43.C: Likewise. libstdc++-v3/ 2007-03-30 Paolo Carlini <pcarlini@suse.de> PR c++/26099 * include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty): Remove. * include/bits/valarray_array.h: Adjust. * include/bits/allocator.h: Likewise. * include/bits/stl_tree.h: Likewise. From-SVN: r123366
Paolo Carlini committed -
* regmove.c: Move all of pass_stack_adjustments from here... * combine-stack-adj.c: ...to this new file. * Makefile.in: Add rules for combine-stack-adj.o. From-SVN: r123363
Steven Bosscher committed -
2007-03-30 Paolo Carlini <pcarlini@suse.de> PR libstdc++/31401 * include/bits/basic_string.tcc (find(const _CharT*, size_type, size_type)): Avoid unsigned overflow. * testsuite/21_strings/basic_string/find/char/4.cc: New. * testsuite/21_strings/basic_string/find/wchar_t/4.cc: Likewise. From-SVN: r123361
Paolo Carlini committed -
PR tree-optimization/31383 * tree-data-ref.c (affine_function_equal_p): Do not require the vectors to have the same length. From-SVN: r123359
Zdenek Dvorak committed -
PR middle-end/PR30700 * dwarf2out.c (reference_to_unused): Ask cgraph for functions availablility; add more sanity checking; ask varpool only about VAR_DECL. From-SVN: r123358
Jan Hubicka committed -
libjava PR libgcj/29869: * java/util/logging/LogManager.java (readConfiguration): Handle comma-separated 'handlers'. Don't try to add a non-existing handler. libgcj/classpath PR libgcj/29869: * gnu/java/util/jar/JarUtils.java (log): Commented out. (readSFManifest): Don't log. From-SVN: r123356
Tom Tromey committed
-
- 29 Mar, 2007 20 commits
-
-
* symbol.c (gfc_find_gsymbol): Simplify, don't unconditionally descend into all branches. From-SVN: r123355
Tobias Schlüter committed -
unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG to decide, but __SIZEOF_LONG_LONG__. * unwind-generic.h (_sleb128_t, _uleb128_t): Don't use HAVE_LONG_LONG to decide, but __SIZEOF_LONG_LONG__. From-SVN: r123352
Richard Henderson committed -
* emutls.c (struct __emutls_array): New. (emutls_destroy): Use it instead of casting element 0 from void*. (__emutls_get_address): Likewise. From-SVN: r123351
Richard Henderson committed -
From-SVN: r123349
GCC Administrator committed -
* intrinsic.c (conv_name): Let gfc_get_string handle the format. (find_conv): Compare pointers instead of calling strcmp. (find_sym): Likewise, but ensure that the compared pointer is in the global string table. From-SVN: r123346
Tobias Schlüter committed -
2007-03-29 Dirk Mueller <dmueller@suse.de> * g++.dg/warn/pedantic2.C: New testcase. From-SVN: r123345
Dirk Mueller committed -
* varasm.c (initializer_constant_valid_p): Don't deny DECL_DLLIMPORT_P on functions. * config/i386/cygming.h: Remove function declarations. (SUBTARGET_ENCODE_SECTION_INFO): Don't undef first. (ASM_OUTPUT_LABELREF): Remove. (COMMON_ASM_OP): Remove. (ASM_OUTPUT_COMMON): Remove. (ASM_OUTPUT_ALIGNED_DECL_COMMON): New. (ASM_DECLARE_OBJECT_NAME): Use i386_pe_maybe_record_exported_symbol. (ASM_DECLARE_FUNCTION_NAME): Likewise. * config/i386/i386-interix.h (SUBTARGET_ENCODE_SECTION_INFO): Rename from TARGET_ENCODE_SECTION_INFO. * config/i386/netware.h: Likewise. * config/i386/i386-protos.h: Update. * config/i386/i386.c (ix86_function_ok_for_sibcall): Turn ifdef of TARGET_DLLIMPORT_DECL_ATTRIBUTES into straight if. (legitimate_constant_p): Reject dllimports. (dllimport_map, get_dllimport_decl): New. (legitimize_dllimport_symbol): New. (legitimize_address, ix86_expand_move): Use it. (TARGET_BINDS_LOCAL_P): Redefine for TARGET_DLLIMPORT_DECL_ATTRIBUTES. * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Remove. (SYMBOL_FLAG_DLLIMPORT, SYMBOL_REF_DLLIMPORT_P): New. (SYMBOL_FLAG_DLLEXPORT, SYMBOL_REF_DLLEXPORT_P): New. * config/i386/predicates.md (constant_call_address_operand): Only accept symbols; reject dllimport_p symbols. * config/i386/uwin.h (ASM_DECLARE_FUNCTION_NAME): Use i386_pe_maybe_record_exported_symbol. * config/i386/winnt.c (DLL_IMPORT_PREFIX, DLL_EXPORT_PREFIX): Remove. (i386_pe_determine_dllexport_p): Rename from i386_pe_dllexport_p. (i386_pe_determine_dllimport_p): Rename from i386_pe_dllimport_p; trust the setting of DECL_DLLIMPORT_P. (i386_pe_dllexport_name_p, i386_pe_dllimport_name_p): Remove. (i386_pe_mark_dllexport, i386_pe_mark_dllimport): Remove. (gen_stdcall_or_fastcall_suffix): Return NULL if no change required; tidy the argument scanning loop. (i386_pe_encode_section_info): Set SYMBOL_FLAG_DLLIMPORT and SYMBOL_FLAG_DLLEXPORT in SYMBOL_REF_FLAGS. (i386_pe_strip_name_encoding): Remove. (i386_pe_binds_local_p): New. (i386_pe_strip_name_encoding_full): Use default_strip_name_encoding. (i386_pe_output_labelref): Remove. (i386_pe_asm_output_aligned_decl_common): New. (i386_pe_maybe_record_exported_symbol): Rename from i386_pe_record_exported_symbol; check for dllexported symbols. From-SVN: r123344
Richard Henderson committed -
filenames.h (FILENAME_CMP): Adjust define to call filename_cmp regardless of the type of file system. * filenames.h (FILENAME_CMP): Adjust define to call filename_cmp regardless of the type of file system. From-SVN: r123343
Joel Brobecker committed -
* filename_cmp.c: New file. * Makefile.in (CFILES): Add filename_cmp.c. (REQUIRED_OFILES): Add filename_cmp.o (filename_cmp.o): New rule. * functions.texi: Regenerate. From-SVN: r123342
Joel Brobecker committed -
* size_dim.f90: Fix dg directive. * pr16433.f: Likewise. * use_6.f90: Likewise. * use_7.f90: Likewise. * entry_9.f90: Likewise. * pointer_intent_2.f90: Likewise. * protected_1.f90: Likewise. * fmt_missing_period_2.f: Likewise. * pointer_intent_3.f90: Likewise. * protected_2.f90: Likewise. * protected_3.f90: Likewise. * pr15754.f90: Likewise. * protected_4.f90: Likewise. * protected_5.f90: Likewise. * initialization_2.f90: Likewise. * protected_6.f90: Likewise. * continuation_7.f90: Likewise. * derived_function_interface_1.f90: Likewise. * der_pointer_4.f90: Likewise. * fmt_zero_precision.f90: Likewise. * blockdata_3.f90: Likewise. * fmt_missing_period_1.f: Likewise. * real_const_3.f90: Likewise. * use_4.f90: Likewise. * fmt_missing_period_3.f: Likewise. * use_5.f90: Likewise. From-SVN: r123341
Francois-Xavier Coudert committed -
From-SVN: r123339
Mike Stump committed -
From-SVN: r123337
Mike Stump committed -
* gengtype.c (oprintf): Mostly revert changes from 2007-03-26; add comment explaining why vsnprintf cannot be used. From-SVN: r123332
Zack Weinberg committed -
re PR middle-end/30666 (warning: canonical types differ for identical types double __complex__ and double __complex__) 2007-03-29 Douglas Gregor <doug.gregor@gmail.com> PR tree-optimization/30666 * tree.c (build_complex_type): When creating type names for DWARF2 debug info, create TYPE_DECLs for TYPE_NAME instead of IDENTIFIER_NODEs. (build_common_tree_nodes_2): Use build_complex_type when building predefined complex types, to preserve canonical types. From-SVN: r123330
Douglas Gregor committed -
2007-03-29 Richard Guenther <rguenther@suse.de> * tree.c (cp_walk_subtrees): Do not set input_location. From-SVN: r123329
Richard Guenther committed -
* ifcvt.c (struct noce_if_info): Add then_else_reversed field. (noce_get_alt_condition): Look at it to determine whether to reverse the condition or not. (noce_get_condition): Substitute the truth for lies. (noce_find_if_block): Set the then_else_reversed field. From-SVN: r123327
Steven Bosscher committed -
* config/fr30/fr30.md (movdi): Do not accept immediates as the destination of this insn. * config/fr30/fr30.c (fr30_move_double): Use emit_move_insn rather than calling gen_rtx_SET directly. Use r0 to hold the value of 'address + 4' rather than a stack based temporary which can be mis-optimized away. From-SVN: r123326
Lars Poeschel committed -
2007-03-29 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.c (s390_secondary_input_reload_class, s390_secondary_output_reload_class): Functions removed. (s390_secondary_reload): New function. (TARGET_SECONDARY_RELOAD): Target macro defined. * config/s390/s390.h (SECONDARY_INPUT_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS): Macro definitions removed. * config/s390/s390.md ("reload_outti", "reload_outdi", "reload_indi", "reload_insi", "reload_out<mode>", "reload_in<mode>", "reload_out<mode>"): Expanders removed. ("reload<mode>_plus", "reload<mode>_nonoffmem_in", "reload<mode>_nonoffmem_out"): Expanders added. From-SVN: r123324
Andreas Krebbel committed -
regmove.c (optimize_reg_copy_1): Don't perform DEST->SRC repair action if SRC->DEST replacement failed anyway. 2007-03-29 Andreas Krebbel <krebbel1@de.ibm.com> * regmove.c (optimize_reg_copy_1): Don't perform DEST->SRC repair action if SRC->DEST replacement failed anyway. From-SVN: r123323
Andreas Krebbel committed -
* config/darwin9.h (ASM_OUTPUT_ALIGNED_COMMON): Add. * config/darwin.h (MAX_OFILE_ALIGNMENT): Fix. testsuite: * gcc.dg/darwin-comm.c: Add. From-SVN: r123321
Mike Stump committed
-
- 28 Mar, 2007 10 commits
-
-
From-SVN: r123317
GCC Administrator committed -
2007-03-28 Eric Christopher <echristo@apple.com> * lib/target-supports.exp (check_effective_target_fstack_protector): New. * gcc.dg/ssp-1.c: Use. * gcc.dg/ssp-2.c: Ditto. From-SVN: r123314
Eric Christopher committed -
From-SVN: r123313
Dwarakanath Rajagopal committed -
2007-03-28 Simon Martin <simartin@users.sourceforge.net> PR c++/29077 * decl.c (grokfndecl): Properly setup decl if it is a constructor or a destructor. From-SVN: r123312
Simon Martin committed -
tree-dfa.c (get_ref_base_and_extent): Do not expect positive offsets for BIT_FIELD_REF and COMPONENT_REF. * tree-dfa.c (get_ref_base_and_extent): Do not expect positive offsets for BIT_FIELD_REF and COMPONENT_REF. From-SVN: r123311
Eric Botcazou committed -
2007-03-28 Tobias Schlter <tobi@gcc.gnu.org> * gfc-internals.texi: Fix output filename. Merge type index into concept index. Start documentation of gfc_code structure. From-SVN: r123309
Tobias Schlüter committed -
2007-03-28 Casey Marshall <csm@gnu.org> * gnu/javax/net/ssl/provider/ClientHandshake.java (RSAGen.implRun): check keyEncipherment bit of the certificate, and just pass the public key to the cipher. From-SVN: r123307
Casey Marshall committed -
From-SVN: r123306
Dwarakanath Rajagopal committed -
2007-03-28 Richard Guenther <rguenther@suse.de> * tree.c (is_global_var): Move ... * tree-flow-inline.h (is_global_var): ... here. * tree.h (is_global_var): Remove declaration. From-SVN: r123303
Richard Guenther committed -
2007-03-28 Douglas Gregor <doug.gregor@gmail.com> * parser.c (struct cp_parser): Update comment for greater_than_is_operator_p. (cp_parser_primary_expression): In C++0x mode, a cast operator can be terminated with a `>>' token when !GREATER_THAN_IS_OPERATOR_P. (TOKEN_PRECEDENCE): In C++0x mode, `>>' is treated like `>' when !GREATER_THAN_IS_OPERATOR_P. (cp_parser_binary_expression): When -Wc++0x-compat, warn about `>>' operators that will become two `>' tokens in C++0x. (cp_parser_parameter_declaration): Treat `>>' like `>' in C++0x mode, allowing it to terminate default arguments. (cp_parser_enclosed_template_argument_list): In C++0x mode, treat `>>' like two consecutive `>' tokens. (cp_parser_skip_to_end_of_template_parameter_list): Ditto. (cp_parser_next_token_ends_template_argument_p): In C++0x, `>>' ends a template argument. 2007-03-28 Douglas Gregor <doug.gregor@gmail.com> * g++.dg/cpp0x/bracket1.C: New. * g++.dg/cpp0x/bracket2.C: New. * g++.dg/cpp0x/bracket3.C: New. * g++.dg/cpp0x/bracket4.C: New. From-SVN: r123302
Douglas Gregor committed
-