- Jan 04, 2006
-
-
sabre authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109345 138bc75d-0d04-0410-961f-82ee72b054a4
-
mmitchel authored
* parser.c (cp_parser_nested_name_specifier_opt): Preserve access checks, even when parsing tentatively. PR c++/24782 * g++.dg/parse/access9.C: New test. * g++.dg/tc1/dr52.C: Tweak error markers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109342 138bc75d-0d04-0410-961f-82ee72b054a4
-
tromey authored
* java/lang/natClassLoader.cc (_Jv_CopyClassesToSystemLoader): Changed argument type. Use SystemClassLoader.addClass. * gnu/gcj/runtime/SystemClassLoader.java (addClass): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109340 138bc75d-0d04-0410-961f-82ee72b054a4
-
pbrook authored
* config/m68k/m68k.c (m68k_output_mi_thunk): Use jmp, not jsr. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109338 138bc75d-0d04-0410-961f-82ee72b054a4
-
dberlin authored
* lambda-code.c (can_put_in_inner_loop): Relax restrictions. (can_put_after_inner_loop): New function. (can_convert_to_perfect_nest): Use can_put_after_inner_loop as well. (perfect_nestify): Change to make copies and modify uses. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109337 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
* directives.c (struct pragma_entry): Add is_deferred. Add ident entry to value union. (end_directive): Don't eat the line if in_deferred_pragma. (run_directive): Remove pragma hacks. (insert_pragma_entry): Remove. (new_pragma_entry): New. (register_pragma_1): Split out of register_pragma. Only handle the lookup tree and return the new entry. (cpp_register_pragma): Fill in the pragma entry here. (cpp_register_deferred_pragma): New. (register_pragma_internal): New. (_cpp_init_internal_pragmas): Use register_pragma_internal. (do_pragma): Allow pragma expansion after namespace. For deferred pragmas, don't slurp the line into a string. (destringize_and_run): Save tokens for deferred pragmas. (cpp_handle_deferred_pragma): Remove. * macro.c (builtin_macro): Remove pragma token hack. (_cpp_push_token_context): Rename from push_token_context and export. * internal.h (struct lexer_state): Add pragma_allow_expansion. (_cpp_push_token_context): Declare. * lex.c (_cpp_lex_token): Allow _cpp_handle_directive to return a token. Update the line number correctly if so. (_cpp_lex_direct): Emit CPP_PRAGMA_EOL tokens. (cpp_token_val_index): Return CPP_TOKEN_FLD_PRAGMA for pragmas. * include/cpplib.h (PRAGMA_EOL): New. (CPP_TOKEN_FLD_PRAGMA): New. (struct cpp_token): Add val.pragma. (struct cpp_options): Remove defer_pragmas. (cpp_handle_deferred_pragma): Remove. (cpp_register_deferred_pragma): Declare. gcc/ * c-lex.c (c_lex_with_flags) <CPP_PRAGMA>: Smuggle pragma id via integer constant. (pragma_lex): Remove. * c-pch.c (c_common_pch_pragma): Accept the name as an argument, rather than parsing it. * c-pragma.c (handle_pragma_weak, handle_pragma_redefine_extname, handle_pragma_extern_prefix): Add %< %> quotes. (registered_pragmas): New. (c_register_pragma_1): New. (c_register_pragma): Use it. (c_register_pragma_with_expansion): Likewise. (c_invoke_pragma_handler): New. (init_pragma): Use cpp_register_deferred_pragma directly for pch_preprocess. * c-pragma.h (enum pragma_kind): New. (pragma_handler): New. (c_invoke_pragma_handler): Declare. * c-common.c (c_parse_error): Pretty print CPP_PRAGMA and CPP_PRAGMA_EOL. * c-common.h (c_common_pch_pragma): Update decl. * Makefile.in (c-parser.o): Update dependencies. (GTFILES): Add c-pragma.h. * c-parser.c (struct c_token): Add pragma_kind. (struct c_parser): Add in_pragma. (c_lex_one_token): Always initialize keyword and pragma_kind. Extract data for CPP_PRAGMA. (c_parser_peek_2nd_token): Deny CPP_PRAGMA_EOL. (c_parser_consume_token): Don't allow CPP_PRAGMA unless errors. Don't allow CPP_PRAGMA_EOL if in_pragma. (c_parser_consume_pragma): New. (c_parser_skip_until_found): Stop on CPP_PRAGMA_EOL. (c_parser_skip_to_end_of_parameter): Likewise. (c_parser_skip_to_end_of_block_or_statement): Likewise. (c_parser_skip_to_pragma_eol): New. (c_parser_external_declaration): Handle CPP_PRAGMA. (c_parser_compound_statement_nostart): Likewise. (c_parser_statement_after_labels): Likewise. (c_parser_pragma): New. (pragma_lex): Likewise. (c_parser_pragma_pch_preprocess): New. (c_parser_new): Merge into ... (c_parse_file): ... here. Call c_parser_pragma_pch_preprocess. gcc/cp/ * lex.c (handle_pragma_java_exceptions): Fix whitespace. * parser.c (struct cp_token): Add pragma_kind. (eof_token): Update to match. (struct cp_lexer): Add in_pragma; rearrange next for better packing. (cp_parser_initial_pragma): New. (cp_lexer_new_main): Use it. Don't bother clearing c_lex_return_raw_strings. (cp_lexer_get_preprocessor_token): Always initialize keyword and pragma_kind fields. Handle CPP_PRAGMA. (cp_lexer_consume_token): Don't allow CPP_PRAGMA_EOL when in_pragma is set. (cp_lexer_handle_pragma): Remove. Update callers to cp_parser_pragma. (cp_lexer_print_token) <CPP_PRAGMA>: Don't print as a string. (cp_parser_skip_to_pragma_eol): New. (cp_parser_error): Use it. (cp_parser_skip_to_closing_parenthesis): Stop at CPP_PRAGMA_EOL; rearrange with switch statement. (cp_parser_skip_to_end_of_statement): Likewise. (cp_parser_skip_to_end_of_block_or_statement): Likewise. (cp_parser_skip_to_closing_brace): Likewise. (cp_parser_skip_until_found): Likewise. (cp_parser_statement): Add in_compound argument; update callers. Use it to decide how to handle pragma parsing. (cp_parser_labeled_statement): Add in_compound argument; pass it on to cp_parser_statement. (cp_parser_statement_seq_opt): Stop at CPP_PRAGMA_EOL. (cp_parser_declaration_seq_opt): Likewise. (cp_parser_parameter_declaration): Likewise. (cp_parser_member_specification_opt): Likewise. (cp_parser_function_definition_after_decl): Likewise. (cp_parser_cache_group): Handle CPP_PRAGMA/CPP_PRAGMA_EOL pairs. (cp_parser_pragma): New. (pragma_lex): New. gcc/testsuite/ * g++.dg/parse/pragma2.C: Update expected error lines. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109336 138bc75d-0d04-0410-961f-82ee72b054a4
-
law authored
* tree-cfg.c (bsi_replace): Remove the original statement from the EH throw statement table. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109335 138bc75d-0d04-0410-961f-82ee72b054a4
-
rguenth authored
* decl.c (finish_constructor_body): create simple compound stmt instead of a if(1) { } construct. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109331 138bc75d-0d04-0410-961f-82ee72b054a4
-
dberlin authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109330 138bc75d-0d04-0410-961f-82ee72b054a4
-
bonzini authored
PR bootstrap/24252 * Makefile.def (flags_to_pass): Add STAGE1_CFLAGS and STAGE1_LANGUAGES. * Makefile.tpl (OBJDUMP): New. (EXTRA_HOST_FLAGS): Add it. (EXTRA_GCC_FLAGS): Remove flags already specified in flags_to_pass. * Makefile.tpl (stage[+id+]-start, stage[+id+]-end): Do not try to use symbolic links between directories. Avoid race conditions or make them harmless. * configure.in: Do not try to use symbolic links between directories. * Makefile.def (LEAN): Pass. * Makefile.tpl (LEAN): Define. (stage[+id+]-start): Accept that the previous directory does not exist, if the bootstrap is lean. (stage[+id+]-bubble): Invoke lean bootstrap commands after stage[+id+]-start. Use a makefile variable and an `if' instead of a configure substitution. ([+compare-target+]): Likewise. ([+bootstrap-target+]-lean): New. * configure.in: Remove lean bootstrap support from here. * Makefile.in: Regenerate. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109325 138bc75d-0d04-0410-961f-82ee72b054a4
-
paolo authored
* include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus): Use _CharT_alloc_type as base class. (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust. * include/ext/vstring.h (get_allocator): Tidy. 2006-01-04 Paolo Carlini <pcarlini@suse.de> Implement Option 3 of DR 431 for all the containers. * include/bits/allocator.h (struct __alloc_swap): Add, swaps allocators, optimized to nothing in case they are empty. * include/bits/stl_deque.h (deque<>::swap): Use it. * include/bits/stl_list.h (list<>::swap): Likewise. * include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise. * include/bits/stl_vector.h (vector<>::swap): Likewise. * include/tr1/hashtable (hashtable<>::swap): Likewise. * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap): Likewise. * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap): Likewise. * include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider): Clean-up (now vstring uses the generic __alloc_swap facility). * include/tr1/unordered_map: Adjust includes. * include/tr1/unordered_set: Likewise. * docs/html/ext/howto.html: Add an entry for DR 431. * testsuite/23_containers/deque/modifiers/swap.cc: Move to... * testsuite/23_containers/deque/modifiers/swap/1.cc: ... here. * testsuite/23_containers/deque/modifiers/swap/2.cc: New. * testsuite/23_containers/deque/modifiers/swap/3.cc: New. * testsuite/23_containers/list/modifiers/swap.cc: Move to... * testsuite/23_containers/list/modifiers/swap/1.cc: ... here. * testsuite/23_containers/list/modifiers/swap/2.cc: New. * testsuite/23_containers/list/modifiers/swap/3.cc: New. * testsuite/23_containers/vector/modifiers/swap.cc: Move to... * testsuite/23_containers/vector/modifiers/swap/1.cc: ... here. * testsuite/23_containers/vector/modifiers/swap/2.cc: New. * testsuite/23_containers/vector/modifiers/swap/3.cc: New. * testsuite/23_containers/set/modifiers/swap.cc: Move to... * testsuite/23_containers/set/modifiers/swap/1.cc: ... here. * testsuite/23_containers/set/modifiers/swap/2.cc: New. * testsuite/23_containers/set/modifiers/swap/3.cc: New. * testsuite/23_containers/map/modifiers/swap.cc: Move to... * testsuite/23_containers/map/modifiers/swap/1.cc: ... here. * testsuite/23_containers/map/modifiers/swap/2.cc: New. * testsuite/23_containers/map/modifiers/swap/3.cc: New. * testsuite/23_containers/multiset/modifiers/swap.cc: Move to... * testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here. * testsuite/23_containers/multiset/modifiers/swap/2.cc: New. * testsuite/23_containers/multiset/modifiers/swap/3.cc: New. * testsuite/23_containers/multimap/modifiers/swap.cc: Move to... * testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here. * testsuite/23_containers/multimap/modifiers/swap/2.cc: New. * testsuite/23_containers/multimap/modifiers/swap/3.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109324 138bc75d-0d04-0410-961f-82ee72b054a4
-
paolo authored
* include/ext/sso_string_base.h (__sso_string_base<>::_M_dataplus): Use _CharT_alloc_type as base class. (_M_get_allocator, _M_swap, _M_create, _M_destroy): Adjust. * include/ext/vstring.h (get_allocator): Tidy. 2006-01-04 Paolo Carlini <pcarlini@suse.de> Implement Option 3 of DR 431 for all the containers. * include/bits/allocator.h (struct __alloc_swap): Add, swaps allocators, optimized to nothing in case they are empty. * include/bits/stl_deque.h (deque<>::swap): Use it. * include/bits/stl_list.h (list<>::swap): Likewise. * include/bits/stl_tree.h (_Rb_tree<>::swap): Likewise. * include/bits/stl_vector.h (vector<>::swap): Likewise. * include/tr1/hashtable (hashtable<>::swap): Likewise. * include/ext/rc_string_base.h (__rc_string_base<>::_M_swap): Likewise. * include/ext/sso_string_base.h (__sso_string_base<>::_M_swap): Likewise. * include/ext/vstring_util.h (__vstring_utility<>::_Alloc_hider): Clean-up (now vstring uses the generic __alloc_swap facility). * include/tr1/unordered_map: Adjust includes. * include/tr1/unordered_set: Likewise. * docs/html/ext/howto.html: Add an entry for DR 431. * testsuite/23_containers/deque/modifiers/swap.cc: Move to... * testsuite/23_containers/deque/modifiers/swap/1.cc: ... here. * testsuite/23_containers/deque/modifiers/swap/2.cc: New. * testsuite/23_containers/deque/modifiers/swap/3.cc: New. * testsuite/23_containers/list/modifiers/swap.cc: Move to... * testsuite/23_containers/list/modifiers/swap/1.cc: ... here. * testsuite/23_containers/list/modifiers/swap/2.cc: New. * testsuite/23_containers/list/modifiers/swap/3.cc: New. * testsuite/23_containers/vector/modifiers/swap.cc: Move to... * testsuite/23_containers/vector/modifiers/swap/1.cc: ... here. * testsuite/23_containers/vector/modifiers/swap/2.cc: New. * testsuite/23_containers/vector/modifiers/swap/3.cc: New. * testsuite/23_containers/set/modifiers/swap.cc: Move to... * testsuite/23_containers/set/modifiers/swap/1.cc: ... here. * testsuite/23_containers/set/modifiers/swap/2.cc: New. * testsuite/23_containers/set/modifiers/swap/3.cc: New. * testsuite/23_containers/map/modifiers/swap.cc: Move to... * testsuite/23_containers/map/modifiers/swap/1.cc: ... here. * testsuite/23_containers/map/modifiers/swap/2.cc: New. * testsuite/23_containers/map/modifiers/swap/3.cc: New. * testsuite/23_containers/multiset/modifiers/swap.cc: Move to... * testsuite/23_containers/multiset/modifiers/swap/1.cc: ... here. * testsuite/23_containers/multiset/modifiers/swap/2.cc: New. * testsuite/23_containers/multiset/modifiers/swap/3.cc: New. * testsuite/23_containers/multimap/modifiers/swap.cc: Move to... * testsuite/23_containers/multimap/modifiers/swap/1.cc: ... here. * testsuite/23_containers/multimap/modifiers/swap/2.cc: New. * testsuite/23_containers/multimap/modifiers/swap/3.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_set/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_set/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_map/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_map/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multiset/2.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/1.cc: New. * testsuite/tr1/6_containers/unordered/swap/unordered_multimap/2.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109323 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
make the prototype extern "C" and add throw (). * g++.dg/other/i386-2.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109318 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
* config/i386/i386.md (testqi_ext_3): Ensure len is positive and pos non-negative and pos + len <= 32. (testqi_ext_3_rex64): Ensure len is positive and pos non-negative, drop pos + len < HOST_BITS_PER_WIDE_INT test. (testqi_ext_3* splitter): Handle pos + len == HOST_BITS_PER_WIDE_INT. * gcc.c-torture/compile/20051228-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109317 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
* c-common.c (handle_vector_size_attribute): Reject zero vector size as well as sizes not multiple of component size. * gcc.dg/pr25559.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109316 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
* function.c (instantiate_expr): New function. (instantiate_decls_1, instantiate_decls): If DECL_HAS_VALUE_EXPR_P, walk its DECL_VALUE_EXPR with instantiate_expr. * dwarf2out.c (loc_descriptor_from_tree_1): Don't add DW_OP_deref{,_size} if address isn't going to be added. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109315 138bc75d-0d04-0410-961f-82ee72b054a4
-
bje authored
* config/fp-bit.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109309 138bc75d-0d04-0410-961f-82ee72b054a4
-
dberlin authored
* dominance.c: Add comment about why we use DFS numbering of dominance tree. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109308 138bc75d-0d04-0410-961f-82ee72b054a4
-
mmitchel authored
* name-lookup.c (push_class_level_binding): When a derived class provides a type binding, eliminate any type binding from a base class. PR c++/25625 * repo.c (repo_emit_p): Always instantiate static data members initialized by constant expressions, so that there values are available. PR c++/25492 * g++.dg/lookup/friend9.C: New test. PR c++/25625 * g++.dg/template/repo5.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109307 138bc75d-0d04-0410-961f-82ee72b054a4
-
gccadmin authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109301 138bc75d-0d04-0410-961f-82ee72b054a4
-
- Jan 03, 2006
-
-
tromey authored
PR libgcj/9715, PR libgcj/19132: * java/nio/charset/Charset.java (charsetForName): Try default provider first. (availableCharsets): Re-merged. (providers2): Likewise. (defaultCharset): Likewise. * sources.am, Makefile.in: Rebuilt. * gnu/java/nio/charset/Provider.java: Removed. * java/io/OutputStreamWriter.java (OutputStreamWriter(OutputStream,Charset)): New constructor. (OutputStreamWriter(OutputStream,CharsetEncoder)): Likewise. * java/io/InputStreamReader.java (InputStreamReader(InputStream,CharsetDecoder)): New constructor. (InputStreamReader(InputStream,Charset)): Likewise. * gnu/gcj/convert/BytesToUnicode.java (getDecoder): Try a BytesToCharsetAdaptor. * gnu/gcj/convert/UnicodeToBytes.java (getEncoder): Try a CharsetToBytesAdaptor. * gnu/gcj/convert/CharsetToBytesAdaptor.java: New file. * gnu/gcj/convert/BytesToCharsetAdaptor.java: New file. * mauve-libgcj: Remove getEncoding exclusion. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109294 138bc75d-0d04-0410-961f-82ee72b054a4
-
bje authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109293 138bc75d-0d04-0410-961f-82ee72b054a4
-
kargl authored
PR fortran/25101 * resolve.c (resolve_forall_iterators): Check for scalar variables; Check stride is nonzero. * gfortran.dg/forall_2.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109288 138bc75d-0d04-0410-961f-82ee72b054a4
-
hp authored
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109287 138bc75d-0d04-0410-961f-82ee72b054a4
-
hp authored
dg-require-weak. Adjust regexp to handle leading-underscore targets, NO_DOT_IN_LABEL targets and space as well as TAB after .weak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109286 138bc75d-0d04-0410-961f-82ee72b054a4
-
rth authored
* defaults.h (ASM_OUTPUT_TLS_COMMON): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109282 138bc75d-0d04-0410-961f-82ee72b054a4
-
bonzini authored
2006-01-03 Paolo Bonzini <bonzini@gnu.org> PR rtl-optimization/25578 * combine.c (combine_simplify_rtx, force_to_mode): Don't pass a parameter to simplify_shift_const if changing ASHIFTRT to LSHIFTRT. gcc/testsuite: 2006-01-03 Paolo Bonzini <bonzini@gnu.org> PR rtl-optimization/25578 * gcc.c-torture/execute/20060102-1.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109281 138bc75d-0d04-0410-961f-82ee72b054a4
-
paolo authored
* include/bits/stl_list.h (_List_base<>::_M_get_Node_allocator): Add. (_M_get_Tp_allocator, get_allocator): Tidy. (list<>::list(const list&), insert(iterator, size_type, const value_type&), insert(iterator, _InputIterator, _InputIterator)): Use _M_get_Node_allocator. * include/bits/stl_tree.h (_Rb_tree<>::_M_get_Node_allocator()): Add. (_Rb_tree(const _Rb_tree<>&): Use it. * include/bits/stl_deque.h (_Deque_base<>::_M_get_map_allocator, get_allocator): Tidy. * include/bits/stl_vector.h (_Vector_base<>::get_allocator): Tidy. * testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error line numbers. * testsuite/23_containers/set/operators/1_neg.cc: Likewise. * testsuite/testsuite_allocator.h (uneq_allocator<>::swap): Fix. * testsuite/testsuite_allocator.h (class uneq_allocator): A simple non-empty testing allocator which can be endowed of a "personality" at construction time. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109280 138bc75d-0d04-0410-961f-82ee72b054a4
-
krebbel authored
* gcc/builtins.c (get_builtin_sync_mem): New function. (expand_builtin_sync_operation, expand_builtin_compare_and_swap, expand_builtin_lock_test_and_set, expand_builtin_lock_release): Call get_builtin_sync_mem to generate mem rtx. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109279 138bc75d-0d04-0410-961f-82ee72b054a4
-
paolo authored
* testsuite/27_io/basic_stringstream/str/char/1.cc: Initialize vars. * testsuite/27_io/basic_stringstream/str/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise, tidy. * testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109275 138bc75d-0d04-0410-961f-82ee72b054a4
-
rguenth authored
PR c/25183 * stmt.c (add_case_node): Make sure to clear overflow flags from ranges. * gcc.dg/torture/pr25183.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109272 138bc75d-0d04-0410-961f-82ee72b054a4
-
jakub authored
* config/sparc/sync.md: New file. * config/sparc/sparc.md (UNSPECV_MEMBAR, UNSPECV_CAS, UNSPECV_SWAP, UNSPECV_LDSTUB): New constants. * config/sparc/sparc.c (sparc_expand_compare_and_swap_12): New function. * config/sparc/predicates.md (memory_reg_operand): New predicate. * config/sparc/sparc-protos.h (sparc_expand_compare_and_swap_12): New prototype. * gcc.dg/ia64-sync-1.c: On sparc*-*-*, pass -mcpu=v9. * gcc.dg/ia64-sync-2.c: Likewise. * gcc.dg/ia64-sync-3.c: Likewise. * gcc.dg/ia64-sync-4.c: Likewise. * gcc.dg/sync-2.c: Likewise. * lib/target-supports.exp (sync_char_short, sync_int_long): Indicate that sparc64-*-* and sparcv9-*-* supports sync builtins. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109271 138bc75d-0d04-0410-961f-82ee72b054a4
-
mmitchel authored
* class.c (add_method): Set TYPE_HAS_CONVERSION for classes with a conversion operator. * decl.c (grokdeclarator): Do not set TYPE_HAS_CONVERSION here. PR c++/25638 * class.c (add_method): Never associate more than one destructor with a single class. PR c++/25637 * cp-tree.h (do_friend): Adjust prototype. * decl.c (grokfndecl): Make funcdef_flag a bool, not an int. (grokdeclarator): Likewise. Refine check for invalid declarations/definitions of member functions outside of their own class. * friend.c (do_friend): Make funcdef_flag a bool, not an int. PR c++/25633 * parser.c (cp_parser_mem_initializer_list): Check result of cp_parser_mem_initializer against error_mark_node, not NULL_TREE. (cp_parser_mem_initializer): Return error_mark_node for failure. PR c++/25634 * parser.c (cp_parser_template_parameter_list): Call begin_template_parm_list and end_template_parm_list here. (cp_parser_type_parameter): Not here. (cp_parser_template_declaration_after_export): Or here. (cp_parser_elaborated_type_specifier): Call cp_parser_check_template_parameters. * tree.c (build_target_expr_with_type): Use force_target_expr. PR c++/25635 * g++.dg/parse/operator6.C: New test. PR c++/25637 * g++.dg/parse/error29.C: New test. PR c++/25638 * g++.dg/parse/dtor6.C: New test. PR c++/25633 * g++.dg/parse/ctor3.C: New test. PR c++/25634 * g++.dg/template/class3.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109270 138bc75d-0d04-0410-961f-82ee72b054a4
-
sayle authored
* combine.c (reg_subword_p): New predicate to test whether the destination of a set refers to a subword/piece of a register. (try_combine): Generalize the code to merge the setting of a pseudo to a constant followed by a set of a subword of that register to a constant. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109267 138bc75d-0d04-0410-961f-82ee72b054a4
-
kazu authored
VEC(basic_block,heap) *. (cfg_blocks_add, cfg_blocks_get, ssa_prop_init, ssa_prop_fini): Adjust the uses of cfg_blocks. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109266 138bc75d-0d04-0410-961f-82ee72b054a4
-
kazu authored
x_label_to_block_map to VEC(basic_block,gc) *. * tree-cfg.c (init_empty_tree_cfg, label_to_block_fn, set_bb_for_stmt): Adjust the uses of x_label_to_block_map. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109265 138bc75d-0d04-0410-961f-82ee72b054a4
-
steven authored
COMPONENT_REFs. * emit-rtl.c (mem_attrs_htab_eq): Use iterative_hash_expr for hashing trees instead of a pointer hash. (mem_attrs_htab_eq): Do a deep compare instead of a pointer compare for MEM_EXPR. PR rtl-optimization/25130 * cse.c (exp_equiv_p): Compare MEM_ATTRS instead of MEM_ALIAS_SET when comparing MEMs for GCSE git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109264 138bc75d-0d04-0410-961f-82ee72b054a4
-
bje authored
* targhooks.c (default_decimal_float_supported_p): Define. * target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Redefine to `default_decimal_float_supported_p'. * doc/tm.texi (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109262 138bc75d-0d04-0410-961f-82ee72b054a4
-
nemet authored
TRULY_NOOP_TRUNCATION. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109261 138bc75d-0d04-0410-961f-82ee72b054a4
-
geoffk authored
2006-01-02 Geoffrey Keating <geoffk@apple.com> * dwarf2out.c (have_switched_text_section): Delete. (have_multiple_function_sections): New. (have_location_lists): Make 'bool'. (add_AT_loc_list): Use 'true' not '1'. (dwarf2out_switch_text_section): Set have_multiple_function_sections. (output_loc_list): Use have_multiple_function_sections. (output_ranges): Likewise. (dwarf2out_begin_function): Set have_multiple_function_sections if necessary. (dwarf2out_source_line): Don't fake separate_line_info_table_in_use. Check function_section rather than DECL_SECTION_NAME. (dwarf2out_finish): Use have_multiple_function_sections. Don't clear have_location_lists. Index: gcc/testsuite/ChangeLog 2006-01-02 Geoffrey Keating <geoffk@apple.com> * g++.dg/debug/debug9.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109260 138bc75d-0d04-0410-961f-82ee72b054a4
-