aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2003-12-04sh.md (truncdiqi2): Use andi opcode for immediate.J"orn Rennecke2-13/+22
* sh.md (truncdiqi2): Use andi opcode for immediate. (reload_outdf+1,reload_outdf+2): Remove constraints. (movv16sf_i): Fxi multiplier for SUBREG_BYTE. (movv8qi_i+2): Zero-extend low byte before adding it to high byte. (fipr, ftrv): Add .s suffix to opcode. From-SVN: r74281
2003-12-04re PR target/13186 ([PPC] Internal compiler error in reload.c)Richard Sandiford9-78/+34
PR target/13186 Revert all of the following patch, except the addition of hook_bool_machine_mode_true: 2003-11-02 Richard Sandiford <rsandifo@redhat.com> * Makefile.in (targhooks.o, reload.o): Update dependencies. (GTFILES): Add targhooks.c. (gt-targhooks.h): New rule; depend on s-gtype. * target.h (direct_pool_load_p): New hook. * target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro. (TARGET_INITIALIZER): Include it. * targhooks.h (default_direct_pool_load_p): Declare. (hook_bool_machine_mode_true): Declare. * targhooks.c: Include insn-config.h, recog.h, ggc.h and gt-targhooks.h. (pool_symbol): New variable. (default_direct_pool_load_p): New function. (hook_bool_machine_mode_true): New function. * reload.c: Include target.h. (find_reloads): If an alternative will force a constant into memory, count an extra reload if constant pool symbols are not valid addresses. If an alternative uses memory to move values between registers, count the move as two reloads rather than one. * config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define. * doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document. From-SVN: r74275
2003-12-04re PR c++/9127 (Confusing diagnostic on specialization not introduced by ↵Mark Mitchell6-4/+66
"template<>") PR c++/9127 * cp-tree.h (at_namespace_scope_p): New function. * parser.c (cp_parser_class_head): Handle invalid explicit specializations. * search.c (at_namespace_scope_p): New function. PR c++/9127 * g++.dg/template/error6.C: New test. From-SVN: r74274
2003-12-03libunwind cleanupJames E Wilson4-8/+12
libunwind cleanup * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name. * g++spec.c (lang_specific_driver): Delete USE_LIBUNWIND_EXCEPTIONS support. From-SVN: r74273
2003-12-04hpux.h (TARGET_HAVE_TLS): Define it to false.Mark Mitchell4-5/+20
* config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false. * config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if HAVE_AS_TLS is true. * config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it. From-SVN: r74272
2003-12-03* gcc-page.c (extra_order_size_tab): Correct comment.James E Wilson2-1/+5
From-SVN: r74271
2003-12-04re PR c++/13179 (ICE w/template parameter in catch specification)Mark Mitchell4-1/+14
PR c++/13179 * semantics.c (finish_handler_parms): Do not call eh_type_info for types used in templates. PR c++/13179 * g++.dg/template/eh1.C: New test. From-SVN: r74269
2003-12-04h8300.c (push): Call gen_push_h8300hs_advanced instead of gen_push_h8300hs.Kazu Hirata4-11/+25
* config/h8300/h8300.c (push): Call gen_push_h8300hs_advanced instead of gen_push_h8300hs. (pop): Call gen_pop_h8300hs_advanced instead of gen_pop_h8300hs. * config/h8300/h8300.h (TRAMPOLINE_SIZE): Use Pmode. * config/h8300/h8300.md (*tablejump_h8300hs_advanced): Tighten the predicate. (*tablejump_h8300hs_normal): Tighten the predicate. (push_h8300hs): Change to push_h8300hs_advanced. (pop_h8300hs): Change to pop_h8300hs_advanced. From-SVN: r74267
2003-12-04rtl.c: Fix typo.Eric Christopher3-6/+9
2003-12-03 Eric Christopher <echristo@redhat.com> * rtl.c: Fix typo. * config/mips/mips.h: Ditto. Fix formatting. From-SVN: r74261
2003-12-04* future.options: Remove. Move to gnu.org web pages.Ben Elliston2-40/+4
From-SVN: r74260
2003-12-04Daily bump.GCC Administrator1-1/+1
From-SVN: r74257
2003-12-03c-parse.in (c_in_iteration_stmt, [...]): Move from here...Eric Christopher3-3/+9
2003-12-03 Eric Christopher <echristo@redhat.com> * c-parse.in (c_in_iteration_stmt, c_in_case_stmt): Move from here... * c-tree.h: to here. From-SVN: r74253
2003-12-03re PR rtl-optimization/12324 ([unit-at-a-time] not emitting function ↵Jan Hubicka2-2/+15
referenced from a compound statement) PR optimization/12324 * toplev.c (rest_of_decl_compilation): Do not deffer when compiling in unit-at-a-time mode. From-SVN: r74252
2003-12-03expr.c (store_constructor): Only set RTX_UNCHANGING_P for read-only field if ↵Jakub Jelinek4-3/+59
cleared is 0. * expr.c (store_constructor): Only set RTX_UNCHANGING_P for read-only field if cleared is 0. * gcc.dg/20031202-1.c: New test. From-SVN: r74251
2003-12-03class.c (make_class_data): Push field value to 'hack_signers' instead of ↵Michael Koch3-2/+9
'signers'. 2003-12-03 Michael Koch <konqueror@gmx.de> * class.c (make_class_data): Push field value to 'hack_signers' instead of 'signers'. * decl.c (java_init_decl_processing): Push field 'hack_signers' instead of 'signers'. From-SVN: r74246
2003-12-03re PR c++/10771 (Unreadable error message for illegal specialization)Mark Mitchell4-11/+79
PR c++/10771 * parser.c (cp_parser_check_for_invalid_template_id): New function. (cp_parser_simple_type_specifier): Use it. (cp_parser_elaborated_type_specifier): Likewise. (cp_parser_class_head): Likewise. PR c++/10771 * g++.dg/template/error5.C: New test. From-SVN: r74239
2003-12-03* config.gcc: Mark obsolete targets for GCC 3.4.Nathanael Nerode2-1/+35
From-SVN: r74236
2003-12-03aclocal.m4 (AM_ICONV): Add explicit check for iconv.h.Zack Weinberg7-134/+192
* aclocal.m4 (AM_ICONV): Add explicit check for iconv.h. * config.in, configure.in: Regenerate. * cpphash.h, java/lex.h: Check both HAVE_ICONV and HAVE_ICONV_H before including iconv.h. From-SVN: r74234
2003-12-03[multiple changes]Arnaud Charlet27-590/+442
2003-12-03 Thomas Quinot <quinot@act-europe.fr> PR ada/11724 * adaint.h, adaint.c, g-os_lib.ads: Do not assume that the offset argument to lseek(2) is a 32 bit integer, on some platforms (including FreeBSD), it is a 64 bit value. Introduce a __gnat_lseek wrapper in adaint.c to allow for portability. 2003-12-03 Arnaud Charlet <charlet@act-europe.fr> * gnatvsn.ads (Library_Version): Now contain only the relevant version info. (Verbose_Library_Version): New constant. * g-spipat.adb, g-awk.adb, g-debpoo.adb, g-memdum.adb, g-thread.adb, s-geveop.adb, s-interr.adb, s-taskin.adb, s-tassta.adb: Make code compile with -gnatwa. * gnatlbr.adb: Clean up: replace Library_Version by Verbose_Library_Version. * make.adb, lib-writ.adb, exp_attr.adb: Clean up: replace Library_Version by Verbose_Library_Version. * 5lintman.adb: Removed. * Makefile.in: Update and simplify computation of LIBRARY_VERSION. Fix computation of GSMATCH_VERSION. 5lintman.adb is no longer used: replaced by 7sintman.adb. 2003-12-03 Robert Dewar <dewar@gnat.com> * exp_ch5.adb: (Possible_Bit_Aligned_Component): Maybe_Bit_Aligned_Large_Component new name. Modified to consider small non-bit-packed arrays as troublesome and in need of component-by-component assigment expansion. 2003-12-03 Vincent Celier <celier@gnat.com> * lang-specs.h: Process nostdlib as nostdinc * back_end.adb: Update Copyright notice (Scan_Compiler_Arguments): Process -nostdlib directly. 2003-12-03 Jose Ruiz <ruiz@act-europe.fr> * Makefile.in: When defining LIBGNAT_TARGET_PAIRS for bare board targets, remove the redundant inclusion of EXTRA_HIE_NONE_TARGET_PAIRS, which is always included in HIE_NONE_TARGET_PAIRS. 2003-12-03 Ed Schonberg <schonberg@gnat.com> * sem_attr.adb: (Legal_Formal_Attribute): Attribute is legal in an inlined body, as it is legal in an instance, because legality is cheched in the template. * sem_prag.adb: (Analyze_Pragma, case Warnings): In an inlined body, the pragma may be appplied to an unchecked conversion of a formal parameter. * sem_warn.adb: (Output_Unreferenced_Messages): Suppress "not read" warnings on imported variables. 2003-12-03 Olivier Hainque <hainque@act-europe.fr> * tb-alvms.c (unwind_regular_code, unwind_kernel_handler): New routines. The second one is new functionality to deal with backtracing through signal handlers. (unwind): Split into the two separate subroutines above. Update the documentation, and deal properly with sizeof (REG) different from sizeof (void*). From-SVN: r74226
2003-12-03re PR target/11229 (pure-1.c fails on powerpc64-linux with -O1)Alan Modra2-0/+16
PR target/11229 * cse.c (cse_insn): Set classp using src_const_elt if src_eqv_elt is NULL. From-SVN: r74225
2003-12-03gcse.c (reg_clear_last_set): New function.Richard Earnshaw2-15/+71
* gcse.c (reg_clear_last_set): New function. (reg_set_info): If data is non-null, treat it as an sbitmap of registers, set the bit for the register being set. (compute_store_table): Allocate last_set_in with xcalloc. Do not memset this array on each iteration. Pass reg_set_in_block[bb->index] to note_stores while computing last_set_in instead of scanning last_set_in after the first pass through the insns. Clear last_set_in using reg_clear_last_set instead of explicitly rescanning after each insn. If checking is enabled, assert that last_set_in is completely zeroed after each bb has been processed. From-SVN: r74224
2003-12-03df.c (df_uses_record): The argument of a MEM is read-only, never read-write.Geoffrey Keating2-7/+10
* df.c (df_uses_record) <MEM>: The argument of a MEM is read-only, never read-write. <REG>: Delete incorrect comment. <SET>: Remove 'use_flags' variable. From-SVN: r74221
2003-12-03re PR java/12374 (Segfault on "".x)Ralph Loader3-197/+42
PR java/12374: * parse.y (qualify_ambiguous_name): Remove lots of broken field access processing - there's no need to do that here, because we have resolve_field_access. Remove RESOLVE_EXPRESSION_NAME_P as it isn't used anywhere else. * java-tree.h: Remove RESOLVE_EXPRESSION_NAME_P as it isn't used. From-SVN: r74217
2003-12-02function.c (assign_parms): Make sure parm PARALLEL combined in reg is ↵David Edelsohn2-5/+17
composed of more than one object and... * function.c (assign_parms): Make sure parm PARALLEL combined in reg is composed of more than one object and the mode really produces a reg. From-SVN: r74214
2003-12-03* i386.c (classify_argument): Make it 64bit clean.Jan Hubicka1-1/+1
From-SVN: r74209
2003-12-03i386.c (classify_argument): Make it 64bit clean.Jan Hubicka1-0/+4
* i386.c (classify_argument): Make it 64bit clean. [[Split portion of a mixed commit.]] From-SVN: r74208.2
2003-12-03Daily bump.GCC Administrator1-1/+1
From-SVN: r74206
2003-12-02mips.c (mips_output_external): Replace checks for specific builtin-in ↵Richard Sandiford2-6/+6
functions with a check for DECL_BUILTIN_IN. * config/mips/mips.c (mips_output_external): Replace checks for specific builtin-in functions with a check for DECL_BUILTIN_IN. From-SVN: r74202
2003-12-02vector-check.h: Corrected type for var g_##TMODEDavid Ung2-1/+6
2003-12-02 David Ung <davidu@mips.com> * gcc.dg/compat/vector-check.h: Corrected type for var g_##TMODE From-SVN: r74197
2003-12-02re PR c++/10126 (ICE in convert_nontype_argument on using overload ↵Giovanni Bajo2-0/+25
resolution in template args) PR c++/10126 * g++.dg/template/ptrmem8.C: New test. From-SVN: r74185
2003-12-02re PR c++/10126 (ICE in convert_nontype_argument on using overload ↵Giovanni Bajo2-2/+9
resolution in template args) PR c++/10126 * pt.c (convert_nontype_argument): Handle default conversions while converting a pointer to member function. From-SVN: r74184
2003-12-02re PR c++/12573 (ICE (segfault) with Boost.Python)Giovanni Bajo2-0/+19
PR c++/12573 * g++.dg/template/dependent-expr3.C: New test. From-SVN: r74173
2003-12-02re PR c++/12573 (ICE (segfault) with Boost.Python)Giovanni Bajo2-0/+9
PR c++/12573 * pt.c (value_dependent_expression_p): Handle COMPONENT_REFs by looking into them recursively. From-SVN: r74172
2003-12-02rtl.h (PUT_CODE, PUT_MODE): Remove ENUM_BITFIELD cast.Richard Henderson4-5/+10
* rtl.h (PUT_CODE, PUT_MODE): Remove ENUM_BITFIELD cast. * tree.h (TREE_SET_CODE): Likewise. * recog.h (struct insn_operand_data): Move const after ENUM_BITFIELD. From-SVN: r74170
2003-12-02name-lookup.h (struct cp_binding_level): Use ENUM_BITFIELD.Richard Henderson4-6/+13
* name-lookup.h (struct cp_binding_level): Use ENUM_BITFIELD. * parser.c (struct cp_token): Likewise. (struct cp_parser_token_tree_map_node): Likewise. * lex.c (struct resword): Move const after ENUM_BITFIELD. From-SVN: r74169
2003-12-02[approved by wilson]Ben Elliston3-1/+7
* dbxstclass.h: Rename from this .. * xcoff.h: .. to this. * xcoffout.c: Include xcoff.h. From-SVN: r74167
2003-12-02* Makefile.in (GCC_CFLAGS): Add -Wold-style-definition.Kaveh R. Ghazi2-1/+5
From-SVN: r74153
2003-12-01As per David's request.James E Wilson2-1/+4
* doc/contrib.texi: Update David Mosberger. From-SVN: r74150
2003-12-02arm.c (arm_rtx_costs): Improve for xscale multiply.James Lemke4-6/+55
* config/arm/arm.c (arm_rtx_costs): Improve for xscale multiply. * testsuite/gcc.dg/arm-g2.c: New test. From-SVN: r74149
2003-12-02re PR rtl-optimization/11634 ([hppa] ICE in verify_local_live_at_start, at ↵Roger Sayle4-61/+146
flow.c:555) PR optimization/11634 * recog.c (split_insn): Factor test of INSN_P and handling of set_noop_p out of here into the two callers. (split_all_insns): Add INSN_P test and set_noop_p handling here. If deleting a no-op set after reload that has a REG_UNUSED note, mark the basic block as changed and recalculate life information. (split_all_insns_noflow): Add INSN_P test and set_noop_p handling here. * gcc.dg/20031201-2.c: New test case. From-SVN: r74145
2003-12-02re PR rtl-optimization/12322 (Significant slowdown when compiling ↵Roger Sayle2-56/+57
computed-goto code in Parrot) PR optimization/12322 * gcse.c (struct ls_expr): Change type of hash_index from int to unsigned int. (hash_expr): Document hash_table_size parameter and wrap long line. (ldst_entry): Calculate expression's hash_index and record in ptr. (trim_ld_motion_mems): Use hash_index to search a single bucket instead of scanning the entire hash_table. Remove the "del" local variable and use the equivalent "expr == 0" instead. Change last to be a pointer to the pointer to the current element, to simplify and speed-up deleting from a linked list. From-SVN: r74144
2003-12-01Fixes issues pointed out by Chris Lattner.James E Wilson2-6/+8
* doc/c-tree.texi (CONSTRUCTOR): Clarify element order and handling of missing fields. From-SVN: r74143
2003-12-01re PR target/8407 ([IA-64] ICE in simplify_gen_subreg, at ↵James E Wilson2-2/+9
simplify-rtx.c:2711 with very simple code) PR target/8407 * config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call gen_rtx_REG to create new reg with argument mode. From-SVN: r74142
2003-12-02Daily bump.GCC Administrator1-1/+1
From-SVN: r74139
2003-12-01re PR libobjc/11433 (Crash due to dereferencing null pointer when querying ↵Zack Weinberg2-6/+36
protocol) PR 11433 gcc/testsuite: * objc.dg/proto-lossage-3.m: New test. libobjc: * Protocol.m (descriptionForInstanceMethod): Don't dereference instance_methods if it's NULL. (descriptionForClassMethod): Likewise for class_methods. From-SVN: r74137
2003-12-01ggc.h (struct alloc_zone): Move forward declaration up.Steven Bosscher5-51/+128
* ggc.h (struct alloc_zone): Move forward declaration up. (new_ggc_zone): New function prototype. (destroy_ggc_zone): Ditto. * ggc-simple.c (new_ggc_zone): New function, does nothing. (destroy_ggc_zone): Ditto. * ggc-page.c (new_ggc_zone): New function, does nothing. (destroy_ggc_zone): Ditto. * ggc-zone.c (struct page_entry): Fix comment. (ggc_alloc_typed): Use a switch statement instead of ifs. (new_ggc_zone): New function to set up a new GC zone. (destroy_ggc_zone): New function to remove a GC zone. init_ggc): Use new_ggc_zone to set up the default zones. (ggc_collect): Walk a list of zones, instead of just the default zones. Report statistics using the zone name. From-SVN: r74132
2003-12-01* unroll.c (find_splittable_givs): Add missing extend_value_for_giv.Ulrich Weigand2-2/+7
From-SVN: r74126
2003-12-01re PR rtl-optimization/12628 (Segfault with -fno-expensive-optimizations ↵Roger Sayle5-16/+48
-fno-rerun-loop-opt) PR optimization/12628 * toplev.c (rest_of_handle_jump_bypass): Call reg_scan. * regclass.c (reg_scan): Include allocate_reg_info time in TV_REG_SCAN. Minor clean-ups. (reg_scan_update): Minor clean-ups. * gcc.dg/20031201-1.c: New test case. From-SVN: r74125
2003-12-01* config.gcc (s390x-ibm-tpf*): Add extra_parts.Ulrich Weigand2-0/+5
From-SVN: r74121
2003-12-01Fix for aliasing problem reported by Michael Matz.James E Wilson2-1/+6
* config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not GR_ARG_FIRST. From-SVN: r74120