* pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
(MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
BIGGEST_ALIGNMENT.
(PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
(FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
From-SVN: r60056
* config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
(CONST_OK_FOR_K): Likewise.
(CONST_OK_FOR_M): Likewise.
(CONST_OK_FOR_LETTER_P): Do not use the above macros.
From-SVN: r60035
PR c++/8153
PR c++/8036
* NEWS: Document removal of in-class initialization extension for
static data members of non-arithmetic, non-enumeration type.
* decl.c (check_static_variable_definition): Do not allow that
extension.
* decl2.c (grokfield): Do not call digest_init when processing
templates.
PR c++/8153
PR c++/8036
* g++.dg/template/static1.C: New test.
* g++.dg/template/static2.C: New test.
* g++.old-deja/g++.ext/memconst.C: New test.
From-SVN: r59980
* config.sub: Import from master repository
* config.guess: Ditto
* MAINTAINERS: Added Svein Seldal under write after approval
* gcc/config.gcc: Added tic4x-* target as an alias to c4x-*
From-SVN: r59955
2002-12-05 Ranjit Mathew <rmathew@hotmail.com>
Andrew Haley <aph@redhat.com>
* parse.y (source_end_java_method): Remove custom encoding of line
numbers for a function decl before passing it to the back end.
Co-Authored-By: Andrew Haley <aph@redhat.com>
From-SVN: r59892
* sh.c (dump_table): DImode pool constants need only 32 bit alignment.
DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
From-SVN: r59891
* config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
(get_shift_alg): Return optimal assembly instructions for the
shifts mentioned above.
From-SVN: r59859
* pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
* pa.md (canonicalize_funcptr_for_compare): Output library call to
canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
* pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
CTOR_LIST_BEGIN): New defines.
* pa/t-linux (LIB2FUNCS_EXTRA): New define.
(fptr.c): Add make rules.
From-SVN: r59842
2002-12-02 Geoffrey Keating <geoffk@apple.com>
* combine.c (combine_simplify_rtx): Add new canonicalizations.
* doc/md.texi (Insn Canonicalizations): Document new
canonicalizations for multiply/add combinations.
* config/rs6000/rs6000.md: Add and modify floating add/multiply
patterns to ensure they're used whenever they can be.
Index: gcc/testsuite/ChangeLog
2002-12-02 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/ppc-fmadd-1.c: New file.
* gcc.dg/ppc-fmadd-2.c: New file.
* gcc.dg/ppc-fmadd-3.c: New file.
From-SVN: r59841
2002-12-04 Chris Demetriou <cgd@broadcom.com>
* config/mips/mips.md (get_fnaddr): Avoid placing an "la"
macro instruction in a branch delay slot, to avoid assembler
warnings.
From-SVN: r59825
2002-12-03 Andrew Haley <aph@redhat.com>
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
_Jv_PushClass.
(_Jv_InitNewClassFields): Set protectionDomain and chain = NULL.
(_Jv_PopClass): New.
(_Jv_PushClass): New.
* java/lang/natClass.cc (forName (jstring)): Use a StackTrace to
discover the ClassLoader of our caller.
(_Jv_CheckArrayStore): Don't check that a class is assignment
compatible with Object.
* java/lang/natVMTHrowable.cc: Delete.
* gnu/gcj/runtime/StackTrace.java: New, partly copied from
java.lang.VMThrowable.
(StackTrace(), StackTrace(int)): New constructors.
(classAt, methodAt, update, methodAtAddress): New methods.
(map): New field.
* java/lang/VMThrowable.java: Use StackTrace instead of
natVMTHrowable.
* java/lang/Class.h (getClassLoaderInternal): New.
(class Class): Be friendly with _Jv_PopClass and _Jv_PushClass.
Be friendly with gnu::gcj::runtime::StackTrace.
(Object.chain): New field.
* include/java-interp.h (class _Jv_InterpMethod): Be friendly with
gnu::gcj::runtime::StackTrace.
* prims.cc (_Jv_NewObjectArray): Use getClassLoaderInternal()
instead of getClassLoader().
* verify.cc (class _Jv_BytecodeVerifier): Likewise.
java::lang::VMThrowable.
* Makefile.am (core_java_source_files): Add MethodRef.java,
StackTrace.java.
(nat_source_files): Remove natVMThrowable.cc; add natStackTrace.cc.
* Makefile.in: Rebuild.
2002-12-03 Andrew Haley <aph@redhat.com>
* class.c (make_class_data): New field, "chain".
* decl.c (java_init_decl_processing): Likewise.
From-SVN: r59769
PR c++/8720
* spew.c (remove_last_token): Make sure that last_chunk is set
correctly.
PR c++/8615
* error.c (dump_expr): Handle character constants with
TREE_OVERFLOW set.
PR c++/8720
* g++.dg/parse/defarg1.C: New test.
PR c++/8615
* g++.dg/template/char1.C: New test.
From-SVN: r59757
* config/h8300/h8300.c (dosize): Replace argument op with
sign.
(h8300_output_function_prologue): Update the call to dosize.
(h8300_output_function_epilogue): Likewise.
From-SVN: r59746
* configure.in: Use "missing" script to generate warning if
flex or bison programs not found, instead of invoking "false".
* configure: Rebuilt.
From-SVN: r59735
DR 180
* decl.c (grokdeclarator): Require class-key for all friend class.
Output the correct type and context in the error message.
* g++.old-deja/g++.pt/crash32.C: Expect error.
From-SVN: r59719
PR c++/5919
* g++.dg/template/varmod1.C: New test.
PR c++/5919
* pt.c (unify): Use variably_modified_type_p to test validity of
template argument types.
From-SVN: r59698
PR c++/8727
* g++.dg/inherit/typeinfo1.C: New test.
PR c++/8663
* g++.dg/inherit/typedef1.C: New test.
PR c++/8727
* cp-tree.h (lang_type_class): Add typeinfo_var.
(CLASSTYPE_TYPEINFO_VAR): New macro.
* rtti.c (get_tinfo_decl): Use it.
PR c++/8663
* init.c (expand_member_init): Always get the main variant of a
base class.
From-SVN: r59694
build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
Take location of tm-preds.h into account when calculating
tm_p_file_list.
* configure: Regenerate.
* mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
arguments. Do not provide rtx, rtvec, tree, or GTY here.
Remove special case code for tm_p.h and *config.h; add new
special case code for tm.h and tconfig.h. Clean up a bit.
* Makefile.in (tm_file, tm_file_list): New variables set from
@-substitutions.
(GCONFIG_H): Deleted.
(GTM_H, TM_H): New.
(CONFIG_H): Is now just config.h $(host_xm_file_list).
(TM_P_H): Move up with the other mkconfig.sh-generated
headers; don't mention tm-preds.h explicitly.
(tm.h, cs-tm.h): New rule.
(cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
invocations of mkconfig.sh for changes to that program.
(mostlyclean): Delete print-rtl1.c.
(clean): Delete tm.h.
* Makefile.in, ada/Make-lang.in, cp/Make-lang.in,
f/Make-lang.in, java/Make-lang.in, objc/Make-lang.in,
treelang/Make-lang.in: Update dependencies for the files
listed below.
* mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
* coretypes.h: New file.
* system.h: #define malloc to xmalloc and realloc to xrealloc
when FLEX_SCANNER or YYBISON is defined, independent of the
value of GCC_VERSION.
* alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
gencheck.c, gencodes.c, genconditions.c, genconfig.c,
genconstants.c, genemit.c, genextract.c, genflags.c,
gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
print-tree.c, profile.c, protoize.c, ra-build.c,
ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
regrename.c, reload.c, reload1.c, reorg.c, resource.c,
rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
xcoffout.c, config/darwin-c.c, config/darwin.c,
config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
config/i960/i960-c.c, config/i960/i960.c,
config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
config/m32r/m32r.c, config/m68hc11/m68hc11.c,
config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
config/mips/irix6-libc-compat.c, config/mips/mips.c,
config/mmix/mmix.c, config/mn10200/mn10200.c,
config/mn10300/mn10300.c, config/ns32k/ns32k.c,
config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
config/sparc/sparc.c, config/stormy16/stormy16.c,
config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
Include coretypes.h and tm.h.
* genattrtab.c, genconditions.c, genemit.c, genextract.c,
gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
genrecog.c: Include coretypes.h and tm.h from the file
generated by this program.
* unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
coretypes.h and tm.h, and tsystem.h when not already included.
No need to include stddef.h nor stdlib.h.
* ada/cuintp.c, ada/decl.c, ada/deftarg.c, ada/misc.c,
ada/targtyps.c, ada/trans.c, ada/utils.c, ada/utils2.c:
Include coretypes.h and tm.h, and system.h when not already
included.
* cp/call.c, cp/class.c, cp/cp-lang.c, cp/cvt.c, cp/cxxfilt.c,
cp/decl.c, cp/decl2.c, cp/dump.c, cp/error.c, cp/except.c,
cp/expr.c, cp/friend.c, cp/g++spec.c, cp/init.c, cp/lex.c,
cp/mangle.c, cp/method.c, cp/optimize.c, cp/parse.y, cp/pt.c,
cp/ptree.c, cp/repo.c, cp/rtti.c, cp/search.c, cp/semantics.c,
cp/spew.c, cp/tree.c, cp/typeck.c, cp/typeck2.c:
Include coretypes.h and tm.h.
* f/proj.h, f/ansify.c, f/g77spec.c, f/intdoc.c:
Include coretypes.h and tm.h.
* fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
include auto-host.h or ansidecl.h/
* fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
* fixinc/procopen.c: Include server.h after fixlib.h. Do not
include auto-host.h, ansidecl.h, or system.h.
* fixinc/server.c: Likewise. Also, do not include signal.h,
and do not redefine volatile.
* java/boehm.c, java/buffer.c, java/builtins.c,
java/check-init.c, java/class.c, java/constants.c,
java/decl.c, java/except.c, java/expr.c, java/gjavah.c,
java/jcf-depend.c, java/jcf-dump.c, java/jcf-io.c,
java/jcf-parse.c, java/jcf-path.c, java/jcf-write.c,
java/jv-scan.c, java/jvgenmain.c, java/jvspec.c, java/lang.c,
java/mangle.c, java/mangle_name.c, java/parse-scan.y,
java/parse.y, java/typeck.c, java/verify.c, java/xref.c,
java/zextract.c: Include coretypes.h and tm.h.
* treelang/lex.l: Move "%{" below copyright notice; get rid of
"/*" embedded in comment. Do not #undef IN_GCC; do not
include stdio.h, memory.h, or ansidecl.h; do not include
config.h twice. Do include coretypes.h and tm.h.
* treelang/parse.y: Do not #undef IN_GCC, provide bogus
definitions of tree and rtx typedefs, or include stdio.h,
stdlib.h, string.h, or ansidecl.h. Do include coretypes.h and
tm.h.
* treelang/tree1.c: Do not include ansidecl.h, stdlib.h,
unistd.h, ctype.h, stdarg.h, string.h, or stdio.h. Do include
coretypes.h and tm.h.
* treelang/treetree.c: Do not include stdlib.h, unistd.h,
safe-ctype.h, errno.h. stdarg.h, limits.h, string.h, fcntl.h,
getopt.h. stdio.h, or ansidecl.h. Do include coretypes.h and
tm.h.
[[Split portion of a mixed commit.]]
From-SVN: r59673.2
PR c++/8227
* decl.c (layout_var_decl): Deal gracefully with erroneous types.
(check_initializer): Validate the type of the initialized
variable, even if the initializer is absent.
* typeck.c (cp_type_quals): Deal gracefully with erroneous types.
PR c++/8227
* g++.dg/template/ctor2.C: New test.
From-SVN: r59672
PR c++/8214
* g++.dg/init/string1.C: New test.
PR c++/8214
* typeck.c (convert_for_assignment): Do not use
decl_constant_value on the operand.
From-SVN: r59668
PR c++/8511
* pt.c (instantiate_decl): Handle template friends defined outside
of the class correctly.
PR c++/8511
* g++.dg/template/friend8.C: New test.
From-SVN: r59665
* class.c (walk_subobject_offsets): Recur on binfos as well as on
types.
(layout_nonempty_base_or_field): Pass it a binfo when processing a
base class.
(layout_empty_base): Likewise.
(build_base_field): Likewise.
From-SVN: r59643
* config/h8300/h8300.md (movsi_h8300hs): Change the order of
alternatives to correct the length when the memory operand is
either pre_dec or post_inc.
From-SVN: r59637
* config/h8300/h8300.md (an anonymous pattern): Give an
internal name *tst_extzv_bitqi_1_n.
Accept bit_operand instead of bit_memory_operand.
Do not accept bit tests with the MSB.
(*tst_extzv_memqi_1_n): New.
From-SVN: r59636
* config/rs6000/rs6000.c (altivec_init_builtins): Make the
pointer argument in the prototypes of the following builtins
be (const TYPE *) rather than (TYPE *):
+ __builtin_altivec_ld_internal_4sf
+ __builtin_altivec_ld_internal_4si
+ __builtin_altivec_ld_internal_8hi
+ __builtin_altivec_ld_internal_16qi
+ __builtin_altivec_lvsl
+ __builtin_altivec_lvsr
+ __builtin_altivec_lvebx
+ __builtin_altivec_lvehx
+ __builtin_altivec_lvewx
+ __builtin_altivec_lvxl
+ __builtin_altivec_lvx
+ __builtin_altivec_dst
+ __builtin_altivec_dstt
+ __builtin_altivec_dstst
+ __builtin_altivec_dststt
From-SVN: r59596
* mkmap-symver.awk (BEGIN): Set sawsymbol false.
(nm && NF == 3): Set sawsymbol true.
(END): Exit if no symbols seen.
(output): Fix map syntax error if no globals for the version.
From-SVN: r59578
* pa-protos.h (function_value): New prototype.
* pa.c (function_value): Use a PARALLEL to return small aggregates on
TARGET_64BIT.
* pa.h (FUNCTION_VALUE): Use function_value.
* pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
call_value_internal_reg, sibcall_value_internal_symref,
sibcall_value_internal_symref_64bit): Remove =rf constraint on return
value.
From-SVN: r59555
* expr.c (gen_group_rtx, emit_group_move): New functions.
* expr.h (gen_group_rtx, emit_group_move): Prototype.
* function.c (expand_function_start): Use gen_group_rtx to create a
PARALLEL rtx to hold the return value when the real return rtx is a
PARALLEL.
(expand_function_end): Use emit_group_move to move the return value
from a PARALLEL to the real return registers.
* rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
in PARALLELs.
From-SVN: r59554
* varasm.c (default_exception_section): Move to...
* except.c (default_exception_section): ... here. Make
.gcc_except_table read-only if it is not expected to have any
dynamic relocations and linker handles it.
* dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
if it is not expected to have any dynamic relocations and linker
handles it.
* configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
when linking read-only and read-write sections together.
* configure, config.in: Rebuilt.
* crtstuff.c (EH_FRAME_SECTION_CONST): Define.
(__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
From-SVN: r59507
* testsuite/g++.dg/abi/empty11.C: New test.
* testsuite/g++.dg/rtti/cv1.C: New test.
* tree.c (cp_build_qualified_type_real): Correct handling of
array types.
* class.c (walk_subobject_offsets): Fix thinko.
(build_base_field): Record offsets of empty bases in primary
virtual bases.
(layout_class_type): Record offsets of empty bases in fields.
From-SVN: r59497
* config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
"netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
"${tmake_file} rs6000/t-netbsd".
* config/rs6000/netbsd.h: Rewrite.
* config/rs6000/t-netbsd: New file.
From-SVN: r59479
PR c/8639
* fold-const.c (extract_muldiv): Don't propagate division unless
both arguments are multiples of C.
* gcc.c-torture/execute/20021119-1.c: New.
From-SVN: r59466
* config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
crtbeginT.o".
(arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
(ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
to "" for a.out configurations.
* config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
From-SVN: r59444
* config/h8300/h8300.c (print_operand): Update the use of
h8300_tiny_constant_address_p.
(h8300_adjust_insn_length): Likewise.
(h8300_tiny_constant_address_p): Check if the given rtx is a
variable declared with __attribute__ ((tiny_data)).
From-SVN: r59431
* aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
allow mmap from /dev/zero. Don't make decisions for the host
based on presence or absence of /dev/zero on the build machine.
(ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
(AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
* configure: Regenerate.
From-SVN: r59394
2002-11-22 Ranjit Mathew <rmathew@hotmail.com>
Andrew Haley <aph@redhat.com>
* gcc/java/jcf-write.c (write_classfile): Remove target
class file, if it exists, before renaming the temporary
class file to it.
Co-Authored-By: Andrew Haley <aph@redhat.com>
From-SVN: r59386
PR c++/8342
* typeck.c (get_member_function_from_ptrfunc): Make sure that a
SAVE_EXPR for instance_ptr doesn't get evaluated first inside one
of the branches of a COND_EXPR.
From-SVN: r59360
* config/fr30/fr30.md (movsf_constant_store): Move code to detect 0.0 into fr30.c.
* config/fr30/fr30-protos.h (fr30_const_double_is_zero): Prototype.
* config/fr30/fr30.c (fr30_const_double_is_zero): New function. Return true if the rtx is 0.0.
From-SVN: r59349
* arm.c (arm_get_frame_size): A leaf function does not need its
stack padding to an aligned boundary if it has no frame.
(thumb_get_frame_size): Likewise.
From-SVN: r59339
* combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
(not just mask) are set in C.
* gcc.c-torture/execute/20021118-3.c: New test.
From-SVN: r59295
* config/h8300/h8300.c (h8300_init_once): Allow -mn switch
only if -mh or -ms present.
(h8300_eightbit_constant_address_p): Support the normal mode.
(h8300_tiny_constant_address_p): Likewise.
* config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
(POINTER_SIZE): Add 16 bit pointer for the normal mode.
(Pmode): Evaluate to HImode for the normal mode.
(SIZE_TYPE): Evaluate to unsigned int for normal mode.
(PTRDIFF_TYPE): Evaluate to int for the normal mode.
(ASM_WORD_OP): Evaluate to word for the normal mode.
* config/h8300/h8300.md (tablejump_normal_mode): New.
(indirect_jump_normal_mode): New.
* config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
directory.
(MULTILIB_DIRNAMES): Create target dependent directory
'normal'.
(MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
* doc/invoke.texi (gccoptlist): Describe the new switch -mn.
From-SVN: r59285
* config/h8300/h8300.c (print_operand): Update the use of
EIGHTBIT_CONSTANT_ADDRESS_P.
(h8300_adjust_insn_length): Likewise.
(h8300_eightbit_constant_address_p): Check if the given rtx is
a variable with __attribute__((eightbit_data)).
* config/h8300/h8300.h (OK_FOR_U): Update the use of
EIGHTBIT_CONSTANT_ADDRESS_P.
From-SVN: r59263
* gcc.c (The Specs Language): Document spec functions.
(static_spec_functions, lookup_spec_function)
(eval_spec_function, handle_spec_function)
(if_exists_spec_function, alloc_args): New.
(execute): Abort if processing_spec_function is true.
(do_spec_1): Hand off spec to handle_spec_function if %:
is encountered. If processing_spec_function is true,
end any pending argument when the end of the string is reached.
(main): Use alloc_args to allocate the initial argument vector.
* gcc.h (struct spec_function): New.
(lang_specific_spec_functions): New extern.
* config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
(ENDFILE_SPEC): Add if-exists(crtn%O%s).
* config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
* doc/invoke.texi: Document spec functions.
* cppspec.c (lang_specific_spec_functions): New.
* gccspec.c: Likewise.
* g++spec.c (lang_specific_spec_functions): New.
* g77spec.c (lang_specific_spec_functions): New.
* jvspec.c (lang_specific_spec_functions): New.
From-SVN: r59241
* config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
(FIXUNS_TRUNCTFDI2_LIBCALL): New.
(fixunstfsi_libfunc): Change.
(fixunstfdi_libfunc): Change.
(sdiv_optab): Don't zero out SImode handler.
(udiv_optab): Don't zero out SImode handler.
(smod_optab): Don't zero out SImode handler.
(umod_optab): Don't zero out SImode handler.
From-SVN: r59238
PR preprocessor/8524
* cpplib.c (run_directive): Remove previous kludge to _Pragma.
Add a new one in its place, which hopefully works.
(skip_rest_of_line): Change test for bottom-of-context-stack.
testsuite:
* gcc.dg/cpp/_Pragma5.c: New test.
From-SVN: r59232