aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2003-05-05Daily bump.GCC Administrator1-1/+1
From-SVN: r66473
2003-05-04builtin-attrs.def (ATTR_NOTHROW_NONNULL_1, [...]): Renamed from ↵Kaveh R. Ghazi5-46/+173
ATTR_NONNULL_1, ATTR_NONNULL_2 and ATTR_NONNULL_3. gcc: * builtin-attrs.def (ATTR_NOTHROW_NONNULL_1, ATTR_NOTHROW_NONNULL_2, ATTR_NOTHROW_NONNULL_3): Renamed from ATTR_NONNULL_1, ATTR_NONNULL_2 and ATTR_NONNULL_3. (ATTR_NOTHROW_NONNULL_1_2, ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2, ATTR_MALLOC_NOTHROW_NONNULL_1): New. * builtins.def (DEF_EXT_FALLBACK_BUILTIN): Accept ATTRS argument. (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Update comment (BUILT_IN_INDEX, BUILT_IN_RINDEX, BUILT_IN_MEMCPY, BUILT_IN_MEMMOVE, BUILT_IN_MEMCMP, BUILT_IN_MEMSET, BUILT_IN_MEMPCPY, BUILT_IN_STRCAT, BUILT_IN_STRNCAT, BUILT_IN_STPCPY, BUILT_IN_STRCPY, BUILT_IN_STRNCPY, BUILT_IN_STRCMP, BUILT_IN_STRNCMP, BUILT_IN_STRLEN, BUILT_IN_STRSTR, BUILT_IN_STRPBRK, BUILT_IN_STRSPN, BUILT_IN_STRCSPN, BUILT_IN_STRCHR, BUILT_IN_STRRCHR, BUILT_IN_NAN, BUILT_IN_NANF, BUILT_IN_NANL, BUILT_IN_NANS, BUILT_IN_NANSF, BUILT_IN_NANSL, BUILT_IN_PUTS, BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE, BUILT_IN_PUTS_UNLOCKED, BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_STRDUP): Add "nonnull" attribute. testsuite: * gcc.dg/nonnull-3.c: New test. From-SVN: r66468
2003-05-04expr.c (store_field): Don't clobber TEMP in shift: it might be a variable.Richard Kenner2-3/+21
* expr.c (store_field): Don't clobber TEMP in shift: it might be a variable. (get_inner_reference): Don't go through a VIEW_CONVERT_EXPR whose purpose is to step up the alignment. (expand_expr, case ADDR_EXPR): Force LO_SUM into memory, just like REG. From-SVN: r66465
2003-05-04* doc/cppopts.texi: Remove documentation of -gcc.Neil Booth1-7/+0
From-SVN: r66464
2003-05-04stor-layout.c (compute_record_mode): Relax restriction on fields crossing ↵Richard Kenner2-2/+9
word boundaries forcing BLKmode. * stor-layout.c (compute_record_mode): Relax restriction on fields crossing word boundaries forcing BLKmode. From-SVN: r66463
2003-05-04* doc/cppopts.texi: Enhance -Wtrigraphs documentationNeil Booth4-12/+30
From-SVN: r66462
2003-05-04cppinit.c (cpp_create_reader, [...]): Warn about trigraphs unless explicity ↵Neil Booth6-20/+102
set or -trigraphs. * cppinit.c (cpp_create_reader, post_options): Warn about trigraphs unless explicity set or -trigraphs. * cpplex.c (warn_in_comment): New. (_cpp_process_line_notes): Better handling of -Wtrigraphs. (_cpp_skip_block_comment): Add call to _cpp_process_line_notes. * doc/cppopts.texi, doc/cpp.texi: Update. testsuite: * gcc.dg/cpp/Wtrigraphs.c: Update. * gcc.dg/cpp/Wtrigraphs-2.c: New tests. From-SVN: r66459
2003-05-04Makefile.in (LIBGCOV): Add _gcov_merge_add.Zdenek Dvorak5-12/+123
* Makefile.in (LIBGCOV): Add _gcov_merge_add. * gcov-io.h: Make GCOV_LINKAGE extern in libgcov and prevent resulting namespace clash. (GCOV_MERGE_FUNCTIONS): New. (gcov_merge_fn): Declare. (struct gcov_ctr_info): New field "merge". (__gcov_merge_add): Declare. * coverage.c (ctr_merge_functions): New. (build_ctr_info_type, build_ctr_info_value): Initialize merge field of gcov_ctr_info type. * libgcov.c (__gcov_merge_add): New. (gcov_exit): Call a hook to merge values of counters. From-SVN: r66457
2003-05-04toplev.h (pedwarn_with_file_and_line): Don't declare.Gabriel Dos Reis3-19/+5
* toplev.h (pedwarn_with_file_and_line): Don't declare. * diagnostic.c (pedwarn_with_file_and_line): Remove. From-SVN: r66456
2003-05-04* varasm.c (assemble_variable): Don't use error_with_file_and_line.Gabriel Dos Reis2-4/+7
From-SVN: r66454
2003-05-04Make-lang.in (java/parse.o, [...]): Depend on input.h.Nathan Sidwell4-5/+10
* Make-lang.in (java/parse.o, java/parse-scan.o): Depend on input.h. * lex.h: #include input.h. * jv-scan.c (input_filename): Remove. From-SVN: r66452
2003-05-04builtins.c (expand_builtin_constant_p, [...]): Update prototypes.Kaveh R. Ghazi2-50/+43
* builtins.c (expand_builtin_constant_p, expand_builtin_strlen, expand_builtin_frame_address): Update prototypes. (expand_builtin_constant_p, expand_builtin_strlen, expand_builtin_strcpy, expand_builtin_memset, expand_builtin_bzero, expand_builtin_args_info, expand_builtin_frame_address): Pass in just the argument(s) needed, not the entire expression `exp'. (expand_builtin): Update all calls to these functions. From-SVN: r66448
2003-05-03builtins.c (expand_builtin): Remove.Richard Henderson6-26/+49
* builtins.c (expand_builtin) <BUILT_IN_DWARF_FP_REGNUM>: Remove. <BUILT_IN_DWARF_SP_COLUMN>: New. * builtins.def (BUILT_IN_DWARF_FP_REGNUM): Remove. (BUILT_IN_DWARF_SP_COLUMN): New. * dwarf2out.c (expand_builtin_dwarf_fp_regnum): Remove. (expand_builtin_dwarf_sp_column): New. * except.h: Update to match. * unwind-dw2.c (execute_stack_op): Correct stack push typo. (execute_cfa_program): Record location expression address before extracting length. (uw_update_context_1): Install old CFA into stack pointer column. (uw_init_context_1): Set cfa_reg to stack pointer column. From-SVN: r66447
2003-05-03rs6000.c (constant_pool_expr_p): Make static and return bool.Richard Henderson4-120/+259
* config/rs6000/rs6000.c (constant_pool_expr_p): Make static and return bool. (toc_relative_expr_p): Likewise. (SPE_CONST_OFFSET_OK): Move from rs6000.h. (legitimate_constant_pool_address_p): Move from rs6000.h, change into a function, downcase all users. (legitimate_small_data_p): Likewise. (legitimate_offset_address_p): Likewise. (legitimate_indexed_address_p): Likewise. (legitimate_indirect_address_p): Likewise. (legitimate_lo_sum_address_p): Likewise. (rs6000_mode_dependent_address): Likewise. * rs6000.h (CONSTANT_POOL_EXPR_P, TOC_RELATIVE_EXPR_P): Remove. (SPE_CONST_OFFSET_OK, LEGITIMATE_CONSTANT_POOL_ADDRESS_P, LEGITIMATE_SMALL_DATA_P, LEGITIMATE_OFFSET_ADDRESS_P, LEGITIMATE_INDEXED_ADDRESS_P, LEGITIMATE_INDIRECT_ADDRESS_P, LEGITIMATE_LO_SUM_ADDRESS_P): Move into rs6000.c. (LEGITIMATE_ADDRESS_INTEGER_P): Remove. (GO_IF_MODE_DEPENDENT_ADDRESS): Use rs6000_mode_dependent_address. * config/rs6000/rs6000-protos.h: Update. From-SVN: r66445
2003-05-04Daily bump.GCC Administrator1-1/+1
From-SVN: r66444
2003-05-03rs6000.h (REVERSIBLE_CC_MODE): Define.Geoffrey Keating4-2/+26
* config/rs6000/rs6000.h (REVERSIBLE_CC_MODE): Define. (REVERSE_CONDITION): Define. * gcc.dg/ppc-fsel-1.c: New test. From-SVN: r66442
2003-05-03rs6000.c (scc_comparison_operator): Make equivalent to ↵Geoffrey Keating3-84/+106
branch_positive_comparison_operator. * config/rs6000/rs6000.c (scc_comparison_operator): Make equivalent to branch_positive_comparison_operator. (ccr_bit): Check that sCOND conditions are actually a positive bit. (print_operand): Remove %D substitution. (rs6000_emit_sCOND): Generate complement operation to ensure that sCOND input is a positive bit. * config/rs6000/rs6000.md: Rearrange sCOND templates to be in the same order as bCOND, and add the missing ones. Remove the %D substitutions from the scc patterns. From-SVN: r66441
2003-05-03simplify-rtx.c (simplify_relational_operation): Add case for ! (fabs(x) < 0.0).Geoffrey Keating2-1/+17
* simplify-rtx.c (simplify_relational_operation): Add case for ! (fabs(x) < 0.0). From-SVN: r66440
2003-05-03force merge conflicts in fixincl.x + placement fixBruce Korb4-76/+96
From-SVN: r66439
2003-05-03spe.h: Remove unecessary casts.Aldy Hernandez2-323/+322
2003-05-03 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/spe.h: Remove unecessary casts. Misc cleanups. From-SVN: r66437
2003-05-03re PR c/10604 (-Wall includes sign conversion warning [3.3 regression])Zack Weinberg13-500/+578
PR c/10604 * c-common.c (warn_sign_compare): Initialize to -1. * c-opts.c (c_common_init_options): Don't set warn_sign_compare here. (c_common_decode_option <OPT_Wall>): Set warn_sign_compare for C++ only. (c_common_post_options): Set warn_sign_compare from extra_warnings if it's still -1 at this point. * toplev.c (maybe_warn_unused_parameter): New static variable. (set_Wextra): New static function. (W_options): Remove "extra". (decode_W_option): Call set_Wextra. (independent_decode_option): Likewise. (set_Wunused): Cooperate with set_Wextra in setting warn_unused_parameter. (rest_of_compilation): No need to check extra_warnings as well as warn_uninitialized. * c-typeck.c (build_binary_op, build_conditional_expr): No need to check extra_warnings as well as warn_sign_compare. (internal_build_compound_expr): No need to check extra_warnings as well as warn_unused_value. * function.c (expand_function_end): No need to check extra_warnings as well as warn_unused_parameter. * stmt.c (expand_expr_stmt_value): No need to check extra_warnings as well as warn_unused_value. * cp/typeck.c (build_x_compound_expr): No need to check extra_warnings as well as warn_unused_value. * doc/invoke.texi: Clarify documentation of -Wsign-compare. * gcc.dg/compare7.c, g++.dg/warn/compare1.C: New testcases. * Makefile.in: Disable -Werror for gengtype-lex.o. From-SVN: r66436
2003-05-03trans.c (tree_transform): Use location_t and input_location directly.Nathan Sidwell3-6/+10
* trans.c (tree_transform): Use location_t and input_location directly. (build_unit_elab): Likewise. * utils.c (create_label_decl): Likewise. From-SVN: r66433
2003-05-03com.c (ffecom_do_entry_): Use location_t and input_location directly.Nathan Sidwell5-43/+42
* com.c (ffecom_do_entry_): Use location_t and input_location directly. (ffecom_gen_sfuncdef_): Likewise. (ffecom_start_progunit_): Likewise. (ffecom_sym_transform_): Likewise. (ffecom_sym_transform_assign_): Likewise. * lex.c (ffelex_hash_): Likewise. (ffelex_include_): Likewise. * std.c (ffestd_exec_begin): Likewise. (ffestd_exec_end): Likewise. * ste.c (struct gbe_block): Likewise. (ffeste_start_block_): Likewise. (ffeste_start_stmt_): Likewise. From-SVN: r66432
2003-05-03expr.c (expand_expr, [...]): Don't use gen_lowpart on non-integer modes.Richard Kenner2-3/+8
* expr.c (expand_expr, case VIEW_CONVERT_EXPR): Don't use gen_lowpart on non-integer modes. From-SVN: r66430
2003-05-03emit-rtl.c (last_call_insn, [...]): New functions.Olivier Hainque11-95/+188
* emit-rtl.c (last_call_insn, add_function_usage_to): New functions. * rtl.h (last_call_insn, add_function_usage_to): New prototypes. * builtins.c (expand_builtin_apply): Use the new emit-rtl functions. * calls.c (emit_call_1): Likewise. (expand_call): For calls initializing constant memory, replace emission of standalone mem /u clobber with function usage entry. * expr.c (emit_block_move_via_libcall): Likewise. * cse.c (count_reg_usage, case EXPR_LIST): New case. * flow.c (propagate_one_insn): Pass entire operand of CALL_INSN_FUNCTION_USAGE to mark_used_regs. * integrate.c (try_constants): For CALL_INSNs, substitute constants within the FUNCTION_USAGE also. * loop.c (prescan_loop): Note clobbers of const mem mentioned in FUNCTION_USAGE lists. * reload1.c (replace_pseudos_in): Renamed. (reload): Use it for clobbers surviving until the end of the reload. From-SVN: r66429
2003-05-03stor-layout.c (place_field): When adjusting offset_align, use desired_align, ↵Richard Kenner2-1/+6
not DECL_ALIGN. * stor-layout.c (place_field): When adjusting offset_align, use desired_align, not DECL_ALIGN. From-SVN: r66428
2003-05-03* gcc.dg/m-un-2.c: Fix the typedef of size_t.Kazu Hirata2-1/+5
From-SVN: r66426
2003-05-03c-decl.c (pending_invalid_xref_file): Remove.Nathan Sidwell9-41/+42
* c-decl.c (pending_invalid_xref_file): Remove. (pending_invalid_xref_line): Remove. (pending_invalid_xref_location): New. (lookup_label): Use location_t and input_location directly. (lookup_tag): Likewise. (pending_xref_error): Likewise. (c_expand_body_1): Likewise. * c-common.c (x_expand_start_cond): Likewise. * c-semantics.c (genrtl_for_stmt): Likewise. (find_reachable_label): Likewise. * expr.c (expand_expr): Likewise. * integrate.c (output_inline_function): Likewise. * tree-inline.c (find_alloca_call): Likewise. (find_builtin_longjmp_call): Likewise. * gcc.c (input_filename): Make static. From-SVN: r66425
2003-05-03PR c++/9364, c++/10553, c++/10586Kriang Lerdsuwanakij5-0/+35
PR c++/9364, c++/10553, c++/10586 * decl.c (make_typename_type): Don't crash on illegal code. * g++.dg/parse/typename4.C: New test. * g++.dg/parse/typename5.C: Likewise. From-SVN: r66424
2003-05-03class.c (finish_struct): Use location_t and input_location directly.Nathan Sidwell10-98/+83
* class.c (finish_struct): Use location_t and input_location directly. * decl.c (make_label_decl): Likewise. (use_label): Likewise. * decl2.c (warn_if_unknown_interface): Likewise. (start_static_initialization_or_destruction): Likewise. (generate_ctor_or_dtor_function): Likewise. (finish_file): Likewise. * error.c (print_instantiation_full_context): Likewise. * init.c (create_temporary_var): Likewise. * method.c (synthesize_method): Likewise. * parser.c (cp_token): Likewise. (cp_lexer_set_source_position_from_token): Likewise. (cp_lexer_get_preprocessor_token): Likewise. (cp_parser_statement): Likewise. * pt.c (tsubst_friend_function): Likewise. (instantiate_class_template): Likewise. (tsubst_decl): Likewise. (tsubst): Likewise. (instantiate_decl): Likewise. * semantics.c (begin_class_definition): Likewise. (expand_body): Likewise. From-SVN: r66423
2003-05-03* ansify.c (die_unless): Revert lineno change here.Nathan Sidwell2-1/+5
From-SVN: r66422
2003-05-03* gcc.c-torture/compile/20030503-1.c: New test.Richard Sandiford2-0/+16
From-SVN: r66421
2003-05-03* config/mips/mips.md: Fix comment typo.Richard Sandiford2-1/+3
From-SVN: r66420
2003-05-03mips.c (mips_integer_op): New structure.Richard Sandiford2-10/+199
* config/mips/mips.c (mips_integer_op): New structure. (MIPS_MAX_INTEGER_OPS): Define. (mips_const_insns): Use mips_build_integer to determine the number of instructions needed to load a CONST_INT. (move_operand): Reject compound CONST_INTs. (mips_build_shift, mips_build_lower, mips_build_integer): New fns. (mips_move_integer): New fn. (mips_legitimize_const_move): Pass CONST_INTs to mips_move_integer. (mips_legitimize_move): Only legitimize constants when moving word or subword values. From-SVN: r66419
2003-05-03* Makefile.in (gcov-iov.h): Use move-if-change and a stamp.Matt Kraai2-2/+9
From-SVN: r66417
2003-05-03re PR java/10491 (gcjh should make enclosing class a "friend" of inner classes)Tom Tromey2-0/+38
PR java/10491: * gjavah.c (HANDLE_INNERCLASSES_ATTRIBUTE): New macro. (handle_inner_classes): New function. From-SVN: r66416
2003-05-03re PR java/10459 (ICE with certain expressions as 3rd clause of for loop)Tom Tromey2-7/+21
PR java/10459: * parse.y (finish_for_loop): Do nothing if update expression is a EXPR_WFL_NODE wrapping nothing. (java_complete_lhs) <COMPOUND_EXPR>: Likewise. From-SVN: r66411
2003-05-03builtins.c (expand_builtin_stpcpy): Copy `arglist' before modifying it.Kaveh R. Ghazi2-2/+9
* builtins.c (expand_builtin_stpcpy): Copy `arglist' before modifying it. From-SVN: r66409
2003-05-03Daily bump.GCC Administrator1-1/+1
From-SVN: r66407
2003-05-02contrib.texi (Contributors): Add Zdenek Dvorak, Aldy Hernandez, and Kazu Hirata.Falk Hueffner2-1/+17
* doc/contrib.texi (Contributors): Add Zdenek Dvorak, Aldy Hernandez, and Kazu Hirata. Update Richard Henderson. Co-Authored-By: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> From-SVN: r66405
2003-05-02rs6000.c (rs6000_attribute_table): Add 'extern' to tentative declaration.Geoffrey Keating2-1/+4
* config/rs6000/rs6000.c (rs6000_attribute_table): Add 'extern' to tentative declaration. From-SVN: r66396
2003-05-02sysv4.h (SYMBOL_FLAG_SMALL_V4): Delete.Geoffrey Keating3-38/+14
* config/rs6000/sysv4.h (SYMBOL_FLAG_SMALL_V4): Delete. (SYMBOL_FLAG_SMALL_V4): Delete. * config/rs6000/rs6000.c (small_data_operand): Use SYMBOL_REF_SMALL_P. (rs6000_elf_encode_section_info): Don't set SYMBOL_FLAG_SMALL_V4. (rs6000_elf_in_small_data_p): Add extra section names. Add comment about TREE_PUBLIC test. From-SVN: r66393
2003-05-02c-semantics.c (genrtl_switch_stmt, [...]): Call expand_stmt on result of ↵Geoffrey Keating2-7/+13
expand_unreachable_stmt. * c-semantics.c (genrtl_switch_stmt, genrtl_if_stmt): Call expand_stmt on result of expand_unreachable_stmt. From-SVN: r66392
2003-05-02* doc/contrib.texi (Contributors): Add Daniel Berlin.Gerald Pfeifer2-0/+8
From-SVN: r66388
2003-05-02{603.md,6xx.md,7450.md,7xx.md,rs64.md}: Decrease number of automata.David Edelsohn8-23/+30
* config/rs6000/{603.md,6xx.md,7450.md,7xx.md,rs64.md}: Decrease number of automata. * config/rs6000/rs6000.c (symbol_ref_operand): Check SYMBOL_REF_FUNCTION_P on AIX. (current_file_function_operand): Same. * config/rs6000/rs6000.md (call,call_value): Force non-function symbol_ref into register on AIX. From-SVN: r66385
2003-05-02calls.c (struct arg_data): Move offset, slot_offset, size and alignment_pad ↵Alan Modra4-251/+264
to struct locate_and_pad_arg_data. * calls.c (struct arg_data): Move offset, slot_offset, size and alignment_pad to struct locate_and_pad_arg_data. Update all refs. (initialize_argument_information): Adjust call to locate_and_pad_parm. Delete alignment_pad var. Don't calculate slot_offset here. (emit_library_call_value_1): Delete alignment_pad, offset and size vars. Use struct locate_and_pad_arg_data instead. Adjust refs. Adjust call to locate_and_pad_parm. Don't tweak arg size for partial in-regs here. Formatting fixes. * expr.h (struct locate_and_pad_arg_data): New struct. (locate_and_pad_parm): Adjust declaration. * function.c (assign_parms): Localize vars. Use "locate" instead of other arg location vars. Don't invoke FUNCTION_ARG or FUNCTION_INCOMING_ARG unless pretend_named is different from named_arg. Heed MUST_PASS_IN_STACK and set up "partial" before calling locate_and_pad_parm. Adjust locate_and_pad_parm call. Use slot_offset for stack home of reg parms. Correct test for parm passed in memory. Formatting fixes. (locate_and_pad_parm): Add "partial" to params. Replace offset_ptr arg_size_ptr and alignment pad with "locate". Set slot_offset here. Correct initial_offset_ptr handling. Localize vars. Always pad locate->offset even when in_regs. From-SVN: r66383
2003-05-02Clarify the comment before the abort we hit when a translated string ↵Wolfgang Bangerth1-1/+3
contains invalid formats. From-SVN: r66381
2003-05-02* g++.dg/lookup/using5.C: Fix testcase error.Kriang Lerdsuwanakij2-1/+5
From-SVN: r66380
2003-05-02Makefile.in (TREE_H): Replace location.h with input.h.Nathan Sidwell14-99/+85
* Makefile.in (TREE_H): Replace location.h with input.h. (GTFILES) Remove location.h (gt-lists.h): Replace gt-location.h with gt-input.h * input.h (input_filename, input_line): Remove variables. (location_s, location_t): Move from location.h. (input_location): New. (input_filename, input_line): New #defines. * location.h: Remove. * tree.h: Replace location.h with input.h. (input_filename, input_line): Remove. * diagnostic.h: Replace location.h with input.h. * gcc.h (input_filename, input_filename_length): Remove declarations. * toplev.c (input_filename, input_line): Remove. (input_location): Define. (push_srcloc, pop_srcloc): Adjust. * diagnostic.c (diagnostic_report_current_module): Adjust. f: * lex.c (ffelex_file_pop_): Adjust file_stack member use. (ffelex_file_push_): Likewise. (ffelex_hash_): Likewise. java: * lex.h (input_lineno): Remove declaration. * parse-scan.y: #include input.h. (input_filename): Remove declaration. (input_location): Add definition. (input_line): Remove definition. From-SVN: r66378
2003-05-02Add xstormy16 to list of targets that has a nop instruction and hence which ↵Nick Clifton3-352/+370
can... Add xstormy16 to list of targets that has a nop instruction and hence which can be tested to see if the assembler supports the --gdwarf2 switch. From-SVN: r66374