Age | Commit message (Collapse) | Author | Files | Lines |
|
PR target/11012
* config/m32r/m32r.c (gen_compare): Call gen_addsi3 instead of
gen_cmp_ne_small_const_insn.
* config/m32r/m32r.md (cmp_ne_small_const_insn): Remove.
From-SVN: r74726
|
|
2003-12-17 Neil Booth <neil@daikokuya.co.uk>
Joseph S. Myers <jsm@polyomino.org.uk>
PR c/3347
* c-decl.c (enum_decl_context): Remove BITFIELD.
(grokdeclarator): Take bit-field width as an input.
Perform bit-field width validation with
check_bitfield_type_and_width rather than waiting for
finish_struct.
(groktypename, groktypename_in_parm_context, start_decl,
push_parm_decl, grokfield, start_function): Update calls to
grokdeclarator.
(check_bitfield_type_and_width): New function.
(finish_struct): Move bit-field validation to grokdeclarator
and check_bitfield_type_and_width.
testsuite:
* gcc.dg/bitfld-8.c: New test.
From-SVN: r74725
|
|
From-SVN: r74723
|
|
xscale testcases from James Lemke
* gcc.dg/arm-scd42-[123].c: New tests.
From-SVN: r74712
|
|
template function)
cp:
PR c++/9043
C++ ABI change: Mangling array indices in templates.
* decl.c (compute_array_index_type): Reorganize for earlier
template errors. Use value_dependent_expression_p for abi-2.
* mangle.c (write_array_type): Check broken mangling for
expression indices on abi-1
testsuite:
PR c++/9043
* g++.dg/abi/mangle20-1.C: New test.
* g++.dg/abi/mangle20-2.C: New test.
From-SVN: r74707
|
|
PR bootstrap/13386
* configure.in (gcc_cv_ld_hidden): Set to yes on hppa64*-*-hpux* when
using HP native linker.
* configure: Rebuilt.
From-SVN: r74705
|
|
From-SVN: r74703
|
|
PR c++/13275
* c-common.h (enum rid): Add RID_OFFSETOF.
* c-parser.in (rid_to_yy): Ignore RID_OFFSETOF.
* ginclude/stddef.h (offsetof): Reimplement for C++, using
__offsetof__.
* doc/extend.texi: Document __offsetof__.
PR c++/13275
* lex.c (reswords): Add "__offsetof" and "__offsetof__".
* parser.c (cp_parser): Add in_offsetof_p.
(cp_parser_new): Initialize it.
(cp_parser_primary_expression): Handle __offsetof__ (...).
(cp_parser_postfix_expression): Allow casts to pointer type and
uses of "->" in a constant expression if implementing offsetof.
(cp_parser_unary_expression): Allow the use of "&" in a constant
expression if implementing offsetof.
PR c++/13275
* g++.dg/other/offsetof2.C: Remove XFAIL.
* g++.dg/parse/offsetof1.C: New test.
* g++.gd/parse/offsetof2.C: Likewise.
From-SVN: r74702
|
|
* g++.dg/template/nontype3.C: New test.
* g++.dg/template/static2.C: Tweaked the dg-error clause.
From-SVN: r74701
|
|
parameters...
* semantics.c (finish_id_expression): Refactor the code to handle
template parameters, and emit a more informative error message
when they are used within non integral constant expressions.
From-SVN: r74700
|
|
From-SVN: r74698
|
|
* config/iq2000/iq2000.h: Formatting.
(MAX_INT_TYPE_SIZE, MAX_INT_TYPE_SIZE, CONST_COSTS, RTX_COSTS)
(ADDRESS_COST, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL)
(IMPLICIT_FIX_EXPR, EASY_DIV_EXPR, SLOW_ZERO_EXTEND): Remove
* config/iq2000/iq2000.c: Formatting.
(iq2000_rtx_costs): New.
From-SVN: r74697
|
|
From-SVN: r74694
|
|
* testsuite/g++.old-deja/g++.eh/badalloc1.C: Tweak to
pass with -pthread on FreeBSD systems.
From-SVN: r74689
|
|
cp:
PR c++/13387
* class.c (finish_struct_1): Compute mode and alias set for
CLASSTYPE_AS_BASE.
* call.c (build_over_call): Use CLASSTYPE_AS_BASE for trivial
assignment of a class, as necessary.
* cp-lang.c (cxx_get_alias_set): The alias set as a base is the
same as for the complete type.
testsuite:
PR c++/13387
* g++.dg/expr/assign1.C: New test.
From-SVN: r74683
|
|
cp:
PR c++/13242
C++ ABI change. Mangling template parameters of reference type
* mangle.c (write_template_args): Remove unreachable code.
(write_template_arg): Look through an argument of reference type.
testsuite:
PR c++/13242
* g++.dg/abi/mangle19-1.C: New test.
* g++.dg/abi/mangle19-2.C: New test.
From-SVN: r74682
|
|
point.
* config/mips/mips.c (mips_file_end): Only write symbols that have
been referenced at some point.
From-SVN: r74681
|
|
* config/mips/mips.c: Include langhooks.h
(mips_build_builtin_va_list): Use lang_hooks.types.make_type.
From-SVN: r74678
|
|
From-SVN: r74677
|
|
PR optimization/13313
* combine.c (make_extraction) [REG]: Do not use
gen_lowpart_for_combine when POS is non-zero.
From-SVN: r74676
|
|
* altivec.h (vec_cmple, vec_all_numeric): Fix typo.
* testsuite/gcc.dg/altivec-10.c: Test for above.
From-SVN: r74675
|
|
2003-12-15 David O'Brien <obrien@FreeBSD.org>
* Makefile.in (CPPFLAGS): Initialize from configure.
Approved by: Message-ID: <87oeuarqr4.fsf@egil.codesourcery.com>
From-SVN: r74669
|
|
PR c++/2294
* name-lookup.c (push_overloaded_decl): always construct an OVERLOAD
if the declaration comes from an using declaration.
From-SVN: r74667
|
|
* g++.dg/template/ptrmem7.C: Simplified the test case to not hit
an ICE regression.
From-SVN: r74665
|
|
PR c++/10926
* decl2.c (grokfield): Robustify.
PR c++/11116
* parser.c (cp_parser_throw_expression): Determine whether or not
an assignment-expression is present by doing one-token lookahead.
PR c++/10926
* g++.dg/template/error9.C: New test.
PR c++/11116
* g++.dg/template/error8.C: New test.
From-SVN: r74664
|
|
location)
PR middle-end/13400
* ifcvt.c (noce_process_if_block): Disable unconditional write
optimizations if we could introduce a store to trapping memory
that wasn't present previously.
* gcc.c-torture/execute/20031215-1.c: New test case.
From-SVN: r74663
|
|
PR c++/13269
* parser.c (cp_parser_function_definition_after_declarator): Stop
scanning tokens when reaching EOF.
PR c++/13269
* g++.dg/parse/error5.C: New test.
From-SVN: r74661
|
|
field_decl)
PR c++/12989
* typeck.c (cxx_sizeof_or_alignof_expr): Robustify.
PR c++/12989
* g++.dg/expr/sizeof1.C: New test.
From-SVN: r74660
|
|
From-SVN: r74658
|
|
* system.h (DEFAULT_CALLER_SAVES): Poison.
* toplev.c (flag_caller_saves): Always initialize with 0.
* doc/tm.texi (DEFAULT_CALLER_SAVES): Remove.
From-SVN: r74655
|
|
* flow.c (EXIT_IGNORE_STACK): Move to ...
* defaults.h (EXIT_IGNORE_STACK): ... here.
* dojump.c (clear_pending_stack_adjust): Don't use #ifdef
EXIT_IGNORE_STACK.
* function.c (expand_function_end): Likewise.
* global.c (global_alloc): Likewise.
* ra.c (init_ra): Likewise.
* reload1.c (init_elim_table): Likewise.
* reorg.c (fill_simple_delay_slots): Likewise.
* resource.c (init_resource_info): Likewise.
* doc/tm.texi (EXIT_IGNORE_STACK): Document that the default
is 0.
From-SVN: r74654
|
|
PR c++/13310
* pt.c (dependent_template_p): Handle OVERLOADs.
PR c++/13310
* g++.dg/template/crash15.C: New test.
From-SVN: r74649
|
|
parameter of...
* g++.old-deja/g++.pt/vaarg3.C: Don't expect an error for passing
a non-POD type as the last named parameter of a varargs function.
From-SVN: r74647
|
|
* reload.c (reg_overlap_mentioned_for_reload_p):
When looking at a PLUS in X, avoid spuriously returning nonzero
when IN is a REG or another simple PLUS, or a MEM containing one.
* loop.c (loop_invariant_p): Amend comment about where new registers
might come from.
From-SVN: r74638
|
|
PR c++/13243
PR c++/12573
* parser.c (cp_parser_postfix_expression): Tighten handling of
integral constant expressions.
(cp_parser_unary_expression): Likewise.
* pt.c (value_dependent_expression_p): Remove handling for
COMPONENT_REFs.
PR c++/13243
PR c++/12573
* g++.dg/template/crash14.C: New test.
* g++.dg/template/dependent-expr3.C: Add dg-error markers.
From-SVN: r74637
|
|
language CHILL.
* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Remove
handling of obsolete language CHILL.
From-SVN: r74634
|
|
2003-12-15 Waldek Hebisch <hebisch@math.uni.wroc.pl>
* tree.c (initializer_zerop): Add test for empty set.
* integrate.c (function_cannot_inline_p): Forbid inlining
functions calling `longjmp'.
From-SVN: r74633
|
|
PR c++/11773
* doc/gcov.texi (Gcov and Optimization): Document inline function
behaviour. Fix some file suffixes.
From-SVN: r74630
|
|
cp:
* class.c (add_method): Disallow destructor for java classes.
* decl.c (xref_basetypes): Check java class inheritance.
* decl2.c (check_java_method): Skip artificial params.
testsuite:
* g++.dg/other/java1.C: New test.
From-SVN: r74629
|
|
cp:
PR c++/13241
C++ ABI change. Mangling of symbols in expressions.
* mangle.c (write_mangled_name): Add top_level flag. Rework for
nested and unnested mangling. Deal with abi version 1 and version
2 differences.
(write_expression): Adjust write_mangled_name call.
(mangle_decl_string): Use write_mangled_name for all non-type decls.
testsuite:
PR c++/13241
* g++.dg/abi/mangle18-1.C: New test.
* g++.dg/abi/mangle18-2.C: New test.
From-SVN: r74628
|
|
2003-12-15 Robert Dewar <dewar@gnat.com>
* exp_ch6.adb (Expand_Thread_Body): Fix error in picking up default
sec stack size.
2003-12-15 Vincent Celier <celier@gnat.com>
* gnatchop.adb: (Error_Msg): Do not exit on error for a warning
(Gnatchop): Do not set failure status when reporting the number of
warnings.
2003-12-15 Doug Rupp <rupp@gnat.com>
* s-ctrl.ads: New file.
* Makefile.rtl (GNAT_RTL_NONTASKING_OBJS): Add s-crtl$(objext).
* Make-lang.in: (GNAT_ADA_OBJS): Add ada/s-crtl.o.
(GNATBIND_OBJS): Add ada/s-crtl.o.
* Makefile.in [VMS]: Clean up ifeq rules.
* gnatlink.adb, 6vcstrea.adb, a-direio.adb, a-sequio.adb,
a-ststio.adb, a-textio.adb, g-os_lib.adb, a-witeio.adb,
g-os_lib.ads, i-cstrea.adb, i-cstrea.ads, s-direio.adb,
s-fileio.adb, s-memcop.ads, s-memory.adb, s-stache.adb,
s-tasdeb.adb: Update copyright.
Import System.CRTL.
Make minor modifications to use System.CRTL declared functions instead
of importing locally.
2003-12-15 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
From-SVN: r74627
|
|
2003-12-14 David O'Brien <obrien@FreeBSD.org>
* config/i386/i386.h (__amd64, __amd64__): Remove duplicates.
(committed as obvious)
From-SVN: r74626
|
|
PR optimization/10312
* gcc.c-torture/execute/20031214-1.c: New.
From-SVN: r74625
|
|
* c-common.h (c_parse_error): Declare it.
* c-common.c (c_parse_error): New function.
* c-parse.y (yyerror): Use it.
* parser.c (struct cp_parser): Add in_template_argument_list_p.
(cp_parser_error): Use c_parse_error.
(cp_parser_name_lookup_error): New function.
(cp_parser_new): Initialize it.
(cp_parser_declarator): Add parenthesized_p parameter.
(cp_parser_nested_name_specifier_opt): Use
cp_parser_name_lookup_error.
(cp_parser_parenthesized_expression_list): Improve comments.
(cp_parser_condition): Adjust call to cp_parser_declarator.
(cp_parser_template_parameter): Adjust call to
cp_parser_parameter_declaration.
(cp_parser_template_argument_list): Set
in_template_argument_list_p.
(cp_parser_explicit_instantiation): Adjust call to
cp_parser_declarator.
(cp_parser_simple_type_specifier): Remove unncessary code.
(cp_parser_using_declaration): Use cp_parser_name_lookup_error.
(cp_parser_init_declarator): Handle member function definitions.
(cp_parser_direct_declarator): Adjust call to
cp_parser_declarator.
(cp_parser_type_id): Adjust call to cp_parser_declarator.
(cp_parser_parameter_declaration_list): Avoid backtracking where
possible.
(cp_parser_parameter_declaration): Add parenthesized_p parameter.
(cp_parser_function_definition): Remove.
(cp_parser_member_declaration): Do not backtrack to look for
function definitions.
(cp_parser_exception_declaration): Adjust call to
cp_parser_declarator.
(cp_parser_single_declaration): Handle function definitions via
cp_parser_init_declarator.
(cp_parser_save_member_function_body): New function.
PR c++/10779
PR c++/12160
* g++.dg/parse/error3.C: New test.
* g++.dg/parse/error4.C: Likewise.
* g++.dg/abi/mangle4.C: Tweak error messages.
* g++.dg/lookup/using5.C: Likewise.
* g++.dg/other/error2.C: Likewise.
* g++.dg/parse/typename5.C: Likewise.
* g++.dg/parse/undefined1.C: Likewise.
* g++.dg/template/arg2.C: Likewise.
* g++.dg/template/ttp3.C: Likewise.
* g++.dg/template/type1.C: Likewise.
* g++.old-deja/g++.other/crash32.C: Likewise.
* g++.old-djea/g++.pt/defarg8.C: Likewise.
From-SVN: r74624
|
|
From-SVN: r74621
|
|
function)
PR c++/13106
* decl.c (finish_function): Check if return type is dependent before
issuing no return statement warning.
* g++.dg/warn/noreturn-3.C: New test.
From-SVN: r74616
|
|
PR target/13054
* pa-protos.h (indexed_memory_operand, borx_reg_operand,
move_dest_operand, move_src_operand): New protypes.
(basereg_operand, move_operand, reg_or_nonsymb_mem_operand): Deleted.
* pa.c (copy_reg_pointer, indexed_memory_operand, move_dest_operand,
move_src_operand): New functions.
(basereg_operand, reg_or_nonsymb_mem_operand, move_operand): Delete.
(reg_or_0_or_nonsymb_mem_operand): Return false for unscaled indexed
address until cse is not expected on targets with non-equivalent
space registers.
(hppa_legitimize_address): Canonicalize unscaled indexed addresses
on targets non-equivalent space registers.
(emit_move_sequence): Break out indexed addresses from destination
operand. Similarly, break out unscaled indexed addresses from
source operand on targets with non-equivalent space registers. Fix
REG_POINTER flag when possible. Mark register pointer when creating
new pointers.
(print_operand): Handle unscaled index addresses.
* pa.h (IS_INDEX_ADDR_P, IS_LO_SUM_DLT_ADDR_P): New macro subroutines
for EXTRA_CONSTRAINT.
(EXTRA_CONSTRAINT): Rework to make more readable.
(MODE_OK_FOR_SCALED_INDEXING_P, MODE_OK_FOR_UNSCALED_INDEXING_P): New
subroutines for GO_IF_LEGITIMATE_ADDRESS.
(GO_IF_LEGITIMATE_ADDRESS): Rework using new subroutines. Allow scaled
and unscaled addresses. Canonicalize unscaled indexed addresses on
targets with non-equivalent space registers. Document issues in
handling indexed address modes on PA-RISC.
(PREDICATE_CODES): Update for new and deleted predicates.
* pa.md (move_dest_operand, move_src_operand, indexed_memory_operand):
Use new predicates in move patterns.
Add peephole2 patterns to optimize floating point stores. Fix
constrain preferencing in move patterns. Delete patterns for handling
unscaled indexed memory loads. Add missing load and store with
base-register modification patterns. Correct SFmode floating point
store pattern. Add missing zero extension loads.
From-SVN: r74614
|
|
From-SVN: r74609
|
|
* config/vxlib.c: Fix comment typos.
* config/alpha/alpha.c: Likewise.
* config/arm/arm.c: Likewise.
* config/arm/arm.md: Likewise.
* config/c4x/c4x.c: Likewise.
* config/c4x/c4x.md: Likewise.
* config/cris/cris.h: Likewise.
* config/cris/cris.md: Likewise.
* config/fr30/fr30.c: Likewise.
* config/fr30/fr30.h: Likewise.
* config/fr30/fr30.md: Likewise.
* config/frv/frv.c: Likewise.
* config/frv/frv.md: Likewise.
* config/frv/frvbegin.c: Likewise.
* config/i386/athlon.md: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/i386.md: Likewise.
* config/i386/sco5.h: Likewise.
* config/ia64/ia64.md: Likewise.
* config/ip2k/ip2k.c: Likewise.
* config/ip2k/ip2k.md: Likewise.
* config/m68hc11/m68hc11.h: Likewise.
* config/m68k/m68k.h: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.md: Likewise.
* config/sh/sh.h: Likewise.
* config/sparc/sparc.md: Likewise.
* config/v850/v850.c: Likewise.
* config/v850/v850.h: Likewise.
* config/v850/v850.md: Likewise.
* config/xtensa/xtensa.c: Likewise.
From-SVN: r74596
|
|
* ChangeLog: Fix typos.
* ChangeLog.1: Likewise.
* ChangeLog.2: Likewise.
* call.c: Fix comment typos.
* class.c: Likewise.
* cxx-pretty-print.c: Likewise.
* mangle.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* tree.c: Likewise.
From-SVN: r74595
|