Age | Commit message (Collapse) | Author | Files | Lines |
|
PR c/2035
* expmed.c (extract_bit_field): Fall through to generic code rather
than aborting on subreg special case.
From-SVN: r52777
|
|
2002-04-25 David S. Miller <davem@redhat.com>
* config/sparc/sparc.h (FUNCTION_OK_FOR_SIBCALL): Add back check
for DECL being NULL.
From-SVN: r52776
|
|
2002-04-25 Steve Christiansen <smc@us.ibm.com>
* doc/md.texi (Machine Constraints): Add IA-64 constraints.
From-SVN: r52774
|
|
of flexible array members.
* c-decl.c (grokdeclarator): Remove outdated ??? note
on invalid declaration of flexible array members.
From-SVN: r52772
|
|
From-SVN: r52771
|
|
From-SVN: r52769
|
|
* config/s390/s390.c (s390_emit_epilogue): Always restore registers
needed by the compiler, even if they are used as global regs.
From-SVN: r52768
|
|
2002-04-24 Matt Hiller <hiller@redhat.com>
* mips.c (mips_class_max_nregs, mips_register_move_cost): New
functions.
* mips.h (CLASS_MAX_NREGS, REGISTER_MOVE_COST): Redefine as calls
of the corresponding functions.
* mips-protos.h (mips_class_max_nregs, mips_register_move_cost):
New prototypes.
2002-04-24 Matt Hiller <hiller@redhat.com>
* config/mips/mips.h (mips_sw_reg_names): Declare as extern.
(ALL_COP_ADDITIONAL_REGISTER_NAMES): New macro.
(FIRST_PSEUDO_REGISTER): Redefine considering coprocessor
registers, adjust comment accordingly.
(FIXED_REGISTERS, CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS,
reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGISTER_NAMES,
DEBUG_REGISTER_NAMES, REG_ALLOC_ORDER): Adjust to include entries
for coprocessor registers.
(ADDITIONAL_REGISTER_NAMES): Include
ALL_COP_ADDITIONAL_REGISTER_NAMES.
(COP0_REG_FIRST, COP0_REG_LAST, COP0_REG_NUM,
COP2_REG_FIRST, COP2_REG_LAST, COP2_REG_NUM,
COP3_REG_FIRST, COP3_REG_LAST, COP3_REG_NUM,
COP0_REG_P, COP2_REG_P, COP3_REG_P, ALL_COP_REG_P,
COPNUM_AS_CHAR_FROM_REGNUM, COP_REG_CLASS_P): New macros.
(mips_char_to_class): Adjust comment to include coprocessor
constraint letters.
* config/mips/mips.c (coprocessor_operand, coprocessor2_operand):
New functions.
(mips_reg_names, mips_regno_to_class): Include coprocessor
information.
(mips_sw_reg_names): Ditto, make non-static.
(mips_move_1word): Handle moves to and from coprocessor registers.
(mips_move_2words): Handle moves to and from coprocessor
registers.
(mips_class_max_nregs, mips_register_move_cost): Handle
coprocessor register classes.
(override_options): Initialize mips_char_to_class and
mips_hard_regno_mode_ok properly for coprocessor registers.
* config/mips/mips.md (movdi_internal, movdi_internal2,
movsi_internal1, movsi_internal2): Add constraint-sets for
coprocessor registers.
* testsuite/gcc.c-torture/mipscop-1.c: New testcase.
* testsuite/gcc.c-torture/mipscop-1.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-2.c: New testcase.
* testsuite/gcc.c-torture/mipscop-2.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-3.c: New testcase.
* testsuite/gcc.c-torture/mipscop-3.x: Disable above if target
isn't mips.
* testsuite/gcc.c-torture/mipscop-4.c: New testcase.
* testsuite/gcc.c-torture/mipscop-4.x: Disable above if target
isn't mips.
* doc/tm.texi: Document feature.
From-SVN: r52765
|
|
* integrate.c (function_attribute_inlinable_p): Simplify.
Check the table pointer is not NULL.
From-SVN: r52763
|
|
* gcc.c-torture/execute/20020227-1.x: New file, xfail on 64-bit
targets.
From-SVN: r52762
|
|
PR c++/5607
* search.c (check_final_overrider): No longer static.
* class.c (update_vtable_entry_for_fn): Call it.
* cp-tree.h: Adjust.
From-SVN: r52760
|
|
From-SVN: r52758
|
|
From-SVN: r52757
|
|
* c-common.h (c_common_parse_file): Update.
* c-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
* c-lex.c (YYDEBUG): Get from c-lex.h.
(c_common_parse_file): Update.
* c-lex.h (YYDEBUG, yydebug): New.
* c-parse.in (YYDEBUG): Get from c-lex.h.
(c_set_yydebug): Remove.
* c-tree.h (c_set_yydebug): Remove.
* langhooks-def.h (lhd_do_nothing_i): New.
(lhd_set_yydebug, LANG_HOOKS_SET_YYDEBUG): Remove.
(LANG_HOOKS_PARSE_FILE, LANG_HOOKS_INITIALIZER): Update.
* langhooks.c (lhd_do_nothing_i): New.
(lhd_set_yydebug): Remove.
* langhooks.h (struct lang_hooks): Update.
* toplev.c (set_yydebug): New.
(compile_file): Update call to parse_file hook.
(decode_d_option): Update.
ada:
* misc.c (gnat_parse_file): Update.
cp:
* cp-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
* cp-tree.h (cxx_set_yydebug): Die.
* lex.c (YYDEBUG): Get from c-lex.h.
(cxx_set_yydebug): Remove.
* parse.y: Include c-lex.h.
(YYDEBUG): Get from c-lex.h.
f:
* com.h (ffe_parse_file): Update.
* lex.c (ffe_parse_file): Update.
java:
* java-tree.h (java_parse_file): Update.
(java_set_yydebug): Remove.
* jcf-parse.c (yydebug): Remove.
(java_set_yydebug): Die.
(java_parse_file): Update.
* lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
objc:
* objc-lang.c (LANG_HOOKS_SET_YYDEBUG): Remove.
From-SVN: r52753
|
|
* parse.y (qualify_ambiguous_name) [case CALL_EXPR]: Always choose
EXPR_WFL_QUALIFICATION of qual_wfl.
From-SVN: r52751
|
|
type.
* mangle.c (write_type): Don't use TYPE_MAIN_VARIANT when writing
out an array type.
(write_CV_qualifiers_for_type): Use TYPE_QUALS, not cp_type_quals,
to determine qualifiers.
From-SVN: r52749
|
|
unconditional.
* typeck.c (build_modify_expr): The pedwarn for array assignment is
now unconditional.
* tree.c (build_cplus_array_type_1): Still process simple array types
normally in templates.
From-SVN: r52746
|
|
* loop.c (load_mems): Don't change the interface of called functions.
* calls.c (expand_call): Take current_function_pretend_args_size
into account when setting argblock for sibcalls.
From-SVN: r52745
|
|
UTF-8 encoded name.
* gnu/gcj/natCore.cc (create): Use __builtin_alloca, and compute
correct length of UTF-8 encoded name. Strip leading `/'.
(_Jv_RegisterResource): Use _Jv_Malloc.
From-SVN: r52744
|
|
* cvt.c (convert_to_void): Don't unconditionally make COND_EXPRs
void.
From-SVN: r52742
|
|
2002-04-24 Matt Hiller <hiller@redhat.com>
* cpplex.c: Remove conditional #undef of MULTIBYTE_CHARS.
* c-lex.c: Ditto.
* cpplex.c (skip_line_comment): Process comment one multibyte
character at a time rather than one char at a time, if
appropriate.
(parse_string): Process string one multibyte character at a time
rather than one char at a time, if appropriate.
* c-lex.c (lex_string): Lex and copy multibyte strings
appropriately.
* cpplib.h (cppchar_t): Change to unsigned.
From-SVN: r52740
|
|
2002-04-24 Matt Hiller <hiller@redhat.com>
* cpplex.c: Remove conditional #undef of MULTIBYTE_CHARS.
* c-lex.c: Ditto.
* cpplex.c (skip_line_comment): Process comment one multibyte
character at a time rather than one char at a time, if
appropriate.
(parse_string): Process string one multibyte character at a time
rather than one char at a time, if appropriate.
* c-lex.c (lex_string): Lex and copy multibyte strings
appropriately.
* cpplib.h (cppchar_t): Change to unsigned.
From-SVN: r52739
|
|
* c-decl.c (grokdeclarator): Don't pedwarn variable sized arrays
for c99.
* gcc.dg/c90-vla-1.c, gcc.dg/c99-vla-1.c: New.
From-SVN: r52738
|
|
2002-04-24 Matt Hiller <hiller@redhat.com>
* cpplex.c: Remove conditional #undef of MULTIBYTE_CHARS.
* c-lex.c: Ditto.
* cpplex.c (skip_line_comment): Process comment one multibyte
character at a time rather than one char at a time, if
appropriate.
(parse_string): Process string one multibyte character at a time
rather than one char at a time, if appropriate.
* c-lex.c (lex_string): Lex and copy multibyte strings
appropriately.
* cpplib.h (cppchar_t): Change to unsigned.
From-SVN: r52737
|
|
* expr.c (PRE_JSR): Call NOTE_LABEL for return address.
* java-tree.h (BCODE_RETURN_TARGET): Removed - never set.
(BCODE_TARGET): Remove BCODE_RETURN_TARGET.
From-SVN: r52735
|
|
* sh.c (sh_va_arg): If argument was passed by reference,
dereference the pointer.
From-SVN: r52734
|
|
* sh.h (PIC_OFFSET_TABLE_REGNUM): Conditionalize on flag_pic.
testsuite:
* gcc.dg/20020312-2.c: Add SH target.
From-SVN: r52733
|
|
registers.
* sh.md (divsi3_i4_media): Use match_operand for input values
rather than hard registers.
(divsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
unnecessarily through hard registers. Keep copies of pseudo
registers outside of the libcall sequence.
* sh.md (casesi_shift_media): Add modes.
From-SVN: r52732
|
|
* sh.h (RETURN_IN_MEMORY): Return variable size BLKmode
values in memory.
From-SVN: r52731
|
|
* attribs.c (c_common_attribute_table): Move table and handlers
to c-common.c.
(format_attribute_table, lang_attribute_table,
lang_attribute_common): Remove.
(init_attributes): Replace NULL pointers with pointers to the
empty table.
(handle_packed_attribute, handle_nocommon_attribute,
handle_common_attribute, handle_noreturn_attribute,
handle_noinline_attribute, handle_always_inline_attribute,
handle_used_attribute, handle_unused_attribute,
handle_const_attribute, handle_transparent_union_attribute,
handle_constructor_attribute, handle_destructor_attribute,
handle_mode_attribute, handle_section_attribute,
handle_aligned_attribute, handle_weak_attribute,
handle_alias_attribute, handle_visibility_attribute,
handle_no_instrument_function_attribute, handle_malloc_attribute,
handle_no_limit_stack_attribute, handle_pure_attribute,
handle_deprecated_attribute, handle_vector_size_attribute,
vector_size_helper): Move to c-common.c.
* c-common.c (c_common_attribute_table,
handle_packed_attribute, handle_nocommon_attribute,
handle_common_attribute, handle_noreturn_attribute,
handle_noinline_attribute, handle_always_inline_attribute,
handle_used_attribute, handle_unused_attribute,
handle_const_attribute, handle_transparent_union_attribute,
handle_constructor_attribute, handle_destructor_attribute,
handle_mode_attribute, handle_section_attribute,
handle_aligned_attribute, handle_weak_attribute,
handle_alias_attribute, handle_visibility_attribute,
handle_no_instrument_function_attribute, handle_malloc_attribute,
handle_no_limit_stack_attribute, handle_pure_attribute,
handle_deprecated_attribute, handle_vector_size_attribute,
vector_size_helper): Move from attribs.c.
* c-common.h (c_common_attribute_table,
c_common_format_attribute_table): New.
* c-lang.c (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE,
LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE): Redefine.
* langhooks-def.h (LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE,
LANG_HOOKS_COMMON_ATTRIBUTE_TABLE, LANG_HOOKS_ATTRIBUTE_TABLE): New.
(LANG_HOOKS_INITIALIZER): Update.
* langhooks.h (struct lang_hooks): 3 new attribute hooks.
* target-def.h (TARGET_ATTRIBUTE_TABLE): Default to NULL.
* target.h: Update comment.
* tree.c (default_target_attribute_table): Remove.
* tree.h (default_target_attribute_table, format_attribute_table,
lang_attribute_table, lang_attribute_common): Remove.
ada:
* misc.c (gnat_init): Don't set lang_attribute_common.
cp:
* cp-lang.c (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE,
LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE, LANG_HOOKS_ATTRIBUTE_TABLE):
Redefine.
* cp-tree.h (cp_attribute_table): Rename.
* decl.c (lang_attribute_table): Remove declaration.
(cxx_init_decl_processing): Don't set it.
* tree.c (cp_attribute_table): Rename.
objc:
* objc-lang.c (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE,
LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE): Redefine.
From-SVN: r52730
|
|
* gcc.c-torture/compile/labels-3.x: New file, don't assemble the
compiler output on mips*-*-irix*.
From-SVN: r52726
|
|
* dwarf2.h (enum dwarf_attribute): Add DW_AT_GNU_vector.
* dwarf2out.c (dwarf_attr_name): Support it.
(gen_array_type_die): Emit it.
(lookup_type_die): No special handling for VECTOR_TYPE.
(gen_type_die): Hand VECTOR_TYPE off to gen_array_type_die.
From-SVN: r52724
|
|
From-SVN: r52723
|
|
2002-04-24 David S. Miller <davem@redhat.com>
PR target/6420
* config/sparc/sparc.h (FUNCTION_OK_FOR_SIBCALL): Return false if
32-bit Sparc and current_function_returns_struct is true.
From-SVN: r52720
|
|
From-SVN: r52715
|
|
2002-04-24 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/altivec.h: Cleanup file. Add non individual
variants.
(vec_vaddubm): New.
(vec_vadduhm): New.
(vec_vadduwm): New.
(vec_vaddfp): New.
(vec_vaddcuw): New.
(vec_vaddubs): New.
(vec_vaddsbs): New.
(vec_vadduhs): New.
(vec_vadduws): New.
(vec_vaddsws): New.
(vec_vand): New.
(vec_vandc): New.
(vec_vavgub): New.
(vec_vavgsb): New.
(vec_vavguh): New.
(vec_vavgsh): New.
(vec_vavguw): New.
(vec_vavgsw): New.
(vec_vrfip): New.
(vec_vcmpbfp): New.
(vec_vcmpequb): New.
(vec_vcmpequh): New.
(vec_vcmpequw): New.
(vec_vcmpeqfp): New.
(vec_vcmpgefp): New.
(vec_vcmpgtub): New.
(vec_vcmpgtsb): New.
(vec_vcmpgtuh): New.
(vec_vcmpgtsh): New.
(vec_vcmpgtuw): New.
(vec_vcmpgtsw): New.
(vec_vcmpgtfp): New.
(vec_vcmpgefp): New.
(vec_vcfux): New.
(vec_vcfsx): New.
(vec_vctsxs): New.
(vec_vctuxs): New.
(vec_vexptefp): New.
(vec_vrfim): New.
(vec_lvx): New.
(vec_lvebx): New.
(vec_lvehx): New.
(vec_lde): Add vector float variant.
(vec_lvewx): New.
(vec_lvxl): New.
(vec_vlogefp): New.
(vec_vmaddfp): New.
(vec_vmhaddshs): New.
(vec_vmaxub): New.
(vec_vmaxsb): New.
(vec_vmaxuh): New.
(vec_vmaxsh): New.
(vec_vmaxuw): New.
(vec_vmaxsw): New.
(vec_vmaxsw): New.
(vec_vmaxfp): New.
(vec_vmrghb): New.
(vec_vmrghh): New.
(vec_vmrghw): New.
(vec_vmrglb): New.
(vec_vmrglh): New.
(vec_vmrglw): New.
(vec_vminub): New.
(vec_vminsb): New.
(vec_vminuh): New.
(vec_vminsh): New.
(vec_vminuw): New.
(vec_vminsw): New.
(vec_vminfp): New.
(vec_vmladduhm): New.
(vec_vmhraddshs): New.
(vec_msumubm): New.
(vec_vmsummbm): New.
(vec_vmsumuhm): New.
(vec_vmsumshm): New.
(vec_vmsumuhs): New.
(vec_vmsumshs): New.
(vec_vmuleub): New.
(vec_vmulesb): New.
(vec_vmuleuh): New.
(vec_vmulesh): New.
(vec_vmuloub): New.
(vec_mulosb): New.
(vec_vmulouh): New.
(vec_vmulosh): New.
(vec_vnmsubfp): New.
(vec_vnor): New.
(vec_vor): New.
(vec_vpkuhum): New.
(vec_vpkuwum): New.
(vec_vpkpx): New.
(vec_vpkuhus): New.
(vec_vpkshss): New.
(vec_vpkuwus): New.
(vec_vpkswss): New.
(vec_vpkshus): New.
(vec_vpkswus): New.
(vec_vperm): New.
(vec_vrefp): New.
(vec_vrlb): New.
(vec_vrlh): New.
(vec_vrlw): New.
(vec_vrfin): New.
(vec_vrsqrtefp): New.
(vec_vsel): New.
(vec_vslb): New.
(vec_vslh): New.
(vec_vslw): New.
(vec_vsldoi): New.
(vec_vsl): New.
(vec_vslo): New.
(vec_vspltb): New.
(vec_vsplth): New.
(vec_vspltw): New.
(vec_vspltisb): New.
(vec_vspltish): New.
(vec_vspltisw): New.
(vec_vsrb): New.
(vec_vsrh): New.
(vec_vsrw): New.
(vec_vsrab): New.
(vec_vsrah): New.
(vec_vsraw): New.
(vec_vsr): New.
(vec_vsro): New.
(vec_stvx): New.
(vec_stvebx): New.
(vec_stvehx): New.
(vec_stvewx): New.
(vec_stvxl): New.
(vec_vsububm): New.
(vec_vsubuhm): New.
(vec_vsubuwm): New.
(vec_vsubfp): New.
(vec_vsubcuw): New.
(vec_vsububs): New.
(vec_vsubsbs): New.
(vec_vsubuhs): New.
(vec_vsubshs): New.
(vec_vsubuws): New.
(vec_vsubsws): New.
(vec_vsum4ubs): New.
(vec_vsum4sbs): New.
(vec_vsum4shs): New.
(vec_vsum2sws): New.
(vec_vsumsws): New.
(vec_vrfiz): New.
(vec_vupkhsb): New.
(vec_vupkhpx): New.
(vec_vupkhsh): New.
(vec_vupklsb): New.
(vec_vupklpx): New.
(vec_vupklsh): New.
(vec_vxor): New.
From-SVN: r52711
|
|
PR c++/6331
* method.c (do_build_copy_constructor): Use cp_build_qualified_type.
* typeck.c (build_modify_expr): Allow arrays to differ in cv-quals.
From-SVN: r52709
|
|
From-SVN: r52708
|
|
From-SVN: r52703
|
|
supply it.
2002-04-23 Adam Megacz <adam@xwt.org>
* win32.cc, include/win32.cc (backtrace): Added this function
because Win32 does not supply it.
From-SVN: r52701
|
|
lower-layer handle to here...
* include/std/std_fstream.h (basic_filebuf::sync): Hoist
unconditional flush on lower-layer handle to here...
* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow):
...from here. Optimize remaining _M_file.sync() call pattern.
* testsuite/27_io/narrow_stream_objects.cc (test04): New test.
(test05): Likewise.
From-SVN: r52699
|
|
PR c++/6395
* decl.c (make_rtl_for_nonlocal_decl): Don't mess with #pragma i/i
stuff for comdats.
From-SVN: r52696
|
|
from substracted literals.
* fold-const.c (split_tree): Add MINUS_LITP parameter; separate
added literals from substracted literals.
(associate_trees): Don't convert MINUS_EXPR into PLUS_EXPR.
(fold) [associate]: Preserve MINUS_EXPR if needed.
* gcc.c-torture/execute/20020423-1.c: New.
From-SVN: r52695
|
|
* doc/install.texi: Clarify which versions of alpha*-dec-osf*
are obsoleted.
From-SVN: r52691
|
|
* jvspec.c (lang_specific_driver): Use --resource, not -R. Also
recognize `-fcompile-resource='.
* gcj.texi (Invoking gcj): Use --resource, not -R. Expanded text
a bit.
From-SVN: r52690
|
|
From-SVN: r52689
|
|
* include/bits/fstream.tcc (basic_filebuf::seekoff): Fix for
output-only filebufs.
* include/std/std_fstream.h (basic_filebuf::_M_set_indeterminate):
Likewise.
(basic_filebuf::_M_set_determinate): Likewise.
From-SVN: r52685
|
|
PR libstdc++/6414
* include/bits/fstream.tcc (basic_filebuf::seekoff): Adjust return
value properly in the trivial case.
* testsuite/27_io/istream_seeks.cc (test04): Make sure that
tellg() returns the right value after a read.
From-SVN: r52679
|
|
attributes.
* parse.y (check_class_key): Allow KEY to be union/enum/struct/class
node with attributes.
* g++.dg/parse/attr1.C: New test.
From-SVN: r52678
|
|
* config/cpu/mmix/bits/cpu_limits.h: New file.
* configure.target (CPULIMITSH): Use it.
From-SVN: r52674
|