Jakub Jelinek [Fri, 6 Sep 2002 18:30:36 +0000 (20:30 +0200)]
configure.target: Use cpu_include_dir="config/cpu/sparc" for all sparc targets.
* configure.target: Use cpu_include_dir="config/cpu/sparc" for all
sparc targets.
* config/cpu/sparc/atomicity.h: New file.
* config/cpu/sparc/sparc32/atomicity.h: Removed.
* config/cpu/sparc/sparc64/atomicity.h: Removed.
Jakub Jelinek [Fri, 6 Sep 2002 17:58:27 +0000 (19:58 +0200)]
ctype_noninline.h [...]: Remove using _C_legacy::__ctype_*.
* config/os/gnu-linux/ctype_noninline.h
[_GLIBCPP_USE_SHADOW_HEADERS]: Remove using _C_legacy::__ctype_*.
(ctype<char>::classic_table): If _GLIBCPP_C_LOCALE_GNU, return
_S_c_locale->__ctype_b, otherwise temporarily switch to "C" locale
and return __ctype_b.
(ctype<char>::ctype(__c_locale, const mask*, bool, size_t)): If not
_GLIBCPP_C_LOCALE_GNU, temporarily switch to "C" locale and
initialize using __ctype_{b,tolower,toupper}.
(ctype<char>::ctype(const mask*, bool, size_t)): If
_GLIBCPP_C_LOCALE_GNU, initialize using
_S_c_locale->__ctype_{b,tolower,toupper}, otherwise temporarily
switch to "C" locale and initialize using __ctype_{b,tolower,toupper}.
h8300.c (enum shift_alg): Move to earlier in h8300.c.
* h8300.c (enum shift_alg): Move to earlier in h8300.c.
(enum shift_type, enum h8_cpu): Likewise.
(INL, ROT, LOP, SPC macros): Likewise.
(shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
const designator.
(h8300_init_once): Update shift_alg_{qi,hi,si} to use more
space efficient algorithms when optimize for codesize.
Jason Thorpe [Fri, 6 Sep 2002 14:54:48 +0000 (14:54 +0000)]
arm-protos.h (arm_gen_return_addr_mask): New prototype.
* config/arm/arm-protos.h (arm_gen_return_addr_mask): New
prototype.
* config/arm/arm.c (arm_gen_return_addr_mask): New function.
* config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
rather than GEN_INT.
* config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
(return_addr_mask, *check_arch2): New.
Stan Shebs [Fri, 6 Sep 2002 13:00:39 +0000 (13:00 +0000)]
weak: New directory.
2002-09-06 Stan Shebs <shebs@apple.com>
David Edelsohn <edelsohn@gnu.org>
* gcc.dg/weak: New directory.
* gcc.dg/weak-[1-9].c: Move to new directory, remove all
target-specific xfail bits.
* gcc.dg/typeof-2.c: Move to new directory.
* gcc.dg/weak.exp: New expect script.
Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
From-SVN: r56882
Paolo Carlini [Thu, 5 Sep 2002 21:13:07 +0000 (23:13 +0200)]
re PR libstdc++/7811 (default locale not taken from environment)
2002-09-05 Paolo Carlini <pcarlini@unitus.it>
Roland McGrath <roland@redhat.com>
PR libstdc++/7811
* src/locale.cc (locale::locale(__s)): Use getenv instead
of setenv for the environment locale.
* testsuite/22_locale/ctor_copy_dtor.cc (test03): New.
Co-Authored-By: Roland McGrath <roland@redhat.com>
From-SVN: r56865
Jason Thorpe [Thu, 5 Sep 2002 16:54:57 +0000 (16:54 +0000)]
real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is not a compile-time constant for...
* real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
not a compile-time constant for the non-IBM case.
* config/arm/arm-protos.h (arm_float_words_big_endian): New
prototype.
* config/arm/arm.c (arm_float_words_big_endian): New function.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
if TARGET_VFP and not TARGET_HARD_FLOAT.
(ARM_FLAG_VFP, TARGET_VFP): Define.
(FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
[ Missed arm.h in previous checkin, and pasto'd ChangeLog entry, which
is now corrected. ]
Jason Thorpe [Thu, 5 Sep 2002 16:45:24 +0000 (16:45 +0000)]
real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is not a compile-time constant for...
* real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
not a compile-time constant for the non-IBM case.
* config/arm/arm-protos.h (arm_float_words_big_endian): New
prototype.
* config/arm/arm.c (arm_float_words_big_endian): New function.
(TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__ if TARGET_VFP
and not TARGET_HARD_FLOAT.
(ARM_FLAG_VFP, TARGET_VFP): Define.
(FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
Andrew Haley [Thu, 5 Sep 2002 13:24:41 +0000 (13:24 +0000)]
verify.c (verify_jvm_instructions): Allow exception handler inside code that is being protected, but generate a warning.
2002-08-28 Andrew Haley <aph@redhat.com>
* verify.c (verify_jvm_instructions): Allow exception handler
inside code that is being protected, but generate a warning.
* except.c (link_handler): Initialize `expanded' in new eh_range.
(binding_depth, is_class_level, current_pc): Declare extern.
Jakub Jelinek [Thu, 5 Sep 2002 07:54:26 +0000 (09:54 +0200)]
ctype_members.cc (ctype<wchar_t>::do_widen(char)): Switch to _M_c_locale_ctype around btowc call.
* config/locale/gnu/ctype_members.cc (ctype<wchar_t>::do_widen(char)):
Switch to _M_c_locale_ctype around btowc call.
(ctype<wchar_t>::do_widen(const char*, const char *, wchar_t*)):
Switch to _M_c_locale_ctype around mbsrtowcs call.
(ctype<wchar_t>::do_narrow(char)): Switch to _M_c_locale_ctype around
wctob call.
(ctype<wchar_t>::do_narrow(const char*, const char *, wchar_t*)):
Switch to _M_c_locale_ctype around wcsrtombs call.
Jakub Jelinek [Thu, 5 Sep 2002 07:51:16 +0000 (09:51 +0200)]
monetary_members.cc (moneypunct<wchar_t, [...]): Use __uselocale instead of setlocale for glibc 2.3.
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t, true>::_M_initialize_moneypunct,
moneypunct<wchar_t, false>::_M_initialize_moneypunct): Use
__uselocale instead of setlocale for glibc 2.3.
Jakub Jelinek [Thu, 5 Sep 2002 07:46:17 +0000 (09:46 +0200)]
c++locale_internal.h: New header.
* config/locale/generic/c++locale_internal.h: New header.
* config/locale/gnu/c++locale_internal.h: New header.
* config/locale/gnu/c_locale.cc: Include it.
* config/locale/gnu/collate_members.cc: Include it.
* config/locale/gnu/ctype_members.cc: Include it.
* config/locale/gnu/messages_members.cc: Include it.
* config/locale/gnu/monetary_members.cc: Include it.
* config/locale/gnu/numeric_members.cc: Include it.
* config/locale/gnu/time_members.cc: Include it.
(_M_put): Reorder __strftime_l and __wcsftime_l arguments to match
glibc.
(_M_initialize_timepunct): Initialize _M_c_locale_timepunct for
C locale.
* acinclude.m4: Include string.h when testing strcoll_l.
For glibc 2.3 provide __-prefixed prototypes.
(CLOCALE_INTERNAL_H): Set, add AC_LINK_FILES line.
* aclocal.m4, configure: Rebuilt.
* include/bits/locale_facets.h: Add declaration of specialization
here.
* config/locale/gnu/messages_members.cc: Add specialization for
messages<wchar_t>.
* config/locale/gnu/messages_members.h: Remove generic definition
of do_get.
David Edelsohn [Thu, 5 Sep 2002 03:49:42 +0000 (03:49 +0000)]
rs6000.c (rs6000_flag_pic): New variable.
* config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
(rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
(TARGET_BINDS_LOCAL_P): Define.
(rs6000_override_options): Save original flag_pic value.
(rs6000_elf_select_section): Call default_elf_select_section_1.
(rs6000_elf_unique_section): Call default_unique_section_1.
(rs6000_elf_in_small_data_p): New function.
(rs6000_xcoff_asm_named_section): Determine storage mapping class.
(rs6000_xcoff_select_section): Update based on defaults.
(rs6000_xcoff_unique_section): Set to basic name if not common.
(rs6000_binds_local_p): New function.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
targetm.have_srodata_section if SDATA_EABI.
(TARGET_IN_SMALL_DATA_P): Define.
loop.c (scan_loop): Don't mark separate insns out of a libcall for moving.
gcc:
* loop.c (scan_loop): Don't mark separate insns out of a libcall
for moving.
(move_movables): Abort if we see the first insn of a libcall.
gcc/testsuite
* gcc.c-torture/execute/loop-14.c: New test.
Jason Merrill [Wed, 4 Sep 2002 23:24:00 +0000 (19:24 -0400)]
typeck2.c (add_exception_specifier): Only pedwarn for an incomplete type.
* typeck2.c (add_exception_specifier): Only pedwarn for an
incomplete type.
(require_complete_eh_spec_types): New fn.
(cxx_incomplete_type_diagnostic): Also support pedwarning.
* typeck.c (complete_type_or_diagnostic): Likewise.
* call.c (build_call): Call require_complete_eh_spec_types.
* rtti.c (get_pseudo_ti_desc): Give an error rather than aborting
on an incomplete type.
expr.c (emit_group_load): Revise to allow splitting TCmode source into DImode pieces.
* expr.c (emit_group_load): Revise to allow splitting TCmode source
into DImode pieces.
* pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
* pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
for floating-point register class.
* pa.c (function_arg): Fix handling of modes wider than one word for
TARGET_64BIT.
Janis Johnson [Wed, 4 Sep 2002 16:36:45 +0000 (16:36 +0000)]
invoke.texi (-fshort-wchar): Move to Code Generation Options.
2002-09-04 Janis Johnson <janis187@us.ibm.com>
* doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
(-fpcc-struct-return, -freg-struct-return, -fshort-enums,
-fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
Warn that these options can break ABI compatibility.
David Edelsohn [Wed, 4 Sep 2002 01:56:12 +0000 (01:56 +0000)]
varasm.c (default_section_type_flags): Append _1 to name with shlib parameter.
* varasm.c (default_section_type_flags): Append _1 to name with
shlib parameter. Use original name to call new function with
implicit flag_pic.
(decl_readonly_section): Likewise.
(default_elf_select_section): Likewise.
(default_unique_section): Likewise.
(default_bind_local_p): Likewise.
(categorize_decl_for_section): Add shlib parameter to use in place
of implicit flag_pic.
* output.h: Declare new functions with _1 and shlib argument.
Janis Johnson [Tue, 3 Sep 2002 22:47:41 +0000 (22:47 +0000)]
Makefile.in (TEXI_GCC_FILES): Add compat.texi.
2002-09-03 Janis Johnson <janis187@us.ibm.com>
* Makefile.in (TEXI_GCC_FILES): Add compat.texi.
* doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
include its file, compat.texi.
* doc/compat.texi: New file with new chapter, Binary Compatibility.
Steve Ellcey [Tue, 3 Sep 2002 19:47:10 +0000 (19:47 +0000)]
config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and cxx_target.
* config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
cxx_target.
* config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
handling routine for builtin pragma.
* config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
Registered pragma handling routine.
* ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
(ia64_hpux_add_pragma_builtin) New subroutine used by above.
If builtin pragma seen for math routine and C89 conformance is
requested use different math function in order to set errno.
* t-ia64 (ia64-c.o): Add new rule for new file.
Mark Wielaard [Mon, 2 Sep 2002 15:55:57 +0000 (15:55 +0000)]
NameFinder.java (remove_interpreter): New field.
* gnu/gcj/runtime/NameFinder.java (remove_interpreter): New field.
(sanitizeStack): Correctly reset unknown and interpreter counters,
detect interpreter runtime frames.
(demangleInterpreterMethod): New method.
* gnu/gcj/runtime/natNameFinder.cc (lookupInterp): Use new method.
* java/lang/natVMThrowable.cc (fillInStackTrace): Change order of
filling in addrs[].
Phil Edwards [Sun, 1 Sep 2002 18:09:18 +0000 (18:09 +0000)]
Makefile.am: Use LD_RUN_PATH when linking abi_check.
2002-09-01 Phil Edwards <pme@gcc.gnu.org>
* testsuite/Makefile.am: Use LD_RUN_PATH when linking abi_check.
Fix spelling in comment.
* testsuite/Makefile.in: Regenerate.
* testsuite/abi_check.cc: Use string literals to build 'cmd' rather
than 'quote' and 'bslash'.