Commit Graph

35965 Commits

Author SHA1 Message Date
Elena Zannoni 6a0c61b777 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
From matthew green  <mrg@redhat.com>

        * config/tc-ppc.c (PPC_OPCODE_CLASSIC): Enable this everywhere
        PPC_OPCODE_PPC is, except for BookE architectures.
        (md_parse_option): Add support for -mspe.
        (md_show_usage): Add -mspe.
        (md_parse_option): Add support for -me500 and
        -me500x2 to generate code for Motorola e500 core complex.
        (md_show_usage): Add -me500 and -me500x2.

        (PPC_APUINFO_ISEL, PPC_APUINFO_PMR, PPC_APUINFO_RFMCI,
        PPC_APUINFO_CACHELCK, PPC_APUINFO_SPE, PPC_APUINFO_EFS,
        PPC_APUINFO_BRLOCK): New macros.

        (ppc_cleanup): New function.
        (ppc_apuinfo_section_add): New function.
        (APUID): New macro.
        (md_assemble): Collect info and write the APUinfo section.

        * config/tc-ppc.h (md_cleanup): Define.
        (ppc_cleanup): Export.
        (ELF_TC_SPECIAL_SECTIONS): Add .PPC.EMB.apuinfo section.
2002-08-19 21:08:55 +00:00
Elena Zannoni 5578ad9c7c 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
From  matthew green  <mrg@redhat.com>

        * e500.s: New tests for e500 instructions.
        * e500.d: Results for new test.
        * ppc.exp: Test e500.s.
2002-08-19 21:01:02 +00:00
Elena Zannoni 2397604975 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
From  matthew green  <mrg@redhat.com>

        * ppc-dis.c (powerpc_dialect): Support `-m500', `-m500x2' and
        `-mefs'. Turn off AltiVec for E500 and efs.
        (print_insn_powerpc): Don't print an AltiVec instruction if the
        dialect is not efs.

        * ppc-opc.c (insert_pmrn, extract_pmrn, insert_ev2, extract_ev2,
        insert_ev4, extract_ev4, insert_ev8, extract_ev8): New functions
        for extracting pmrn/evld/evstd/etc operands.
        (CRB, CRFD, CRFS, DC, RD): New instruction fields.
        (CT): Make this equal to RD + 1.
        (PMRN): New operand.
        (RA): Update.
        (EVUIMM, EVUIMM_2, EVUIMM_4, EVUIMM_8): New operands.
        (WS): Update.
        (EVSEL, EVSEL_MASK): New instruction form and mask for EVSEL.
        (ISEL, ISEL_MASK): New instruction form and mask for ISEL.
        (XISEL, XISEL_MASK): New instruction form and mask for ISEL.
        (CTX, CTX_MASK): New instruction form and mask for context cache
        instructions.
        (UCTX, UCTX_MASK): New instruction form and mask for user context
        cache instructions.
        (XC, XC_MASK, XUC, XUC_MASK): New instruction forms.
        (CLASSIC): New define.
        (PPCESPE): New define.
        (PPCISEL, , PPCBRLK, PPCPMR, PPCCHLK, PPCRFMI): New
        defines for integer select, cache control, branch
        locking, power management, cache locking and machine check
        APU instructions, respectively.
        (efsabs, efsnabs, efsneg, efsadd, efssub, efsmul,
        efsdiv, efscmpgt, efscmplt, efscmpeq, efststgt, efststlt,
        efststeq, efscfui, efsctuiz, efscfsi, efscfuf, efscfsf,
        efsctui, efsctsi, efsctsiz, efsctuf, efsctsf,
        evaddw, evaddiw, evsubfw, evsubifw, evabs, evneg, evextsb,
        evextsh, evrndw, evcntlzw, evcntlsw, brinc, evand, evandc, evor,
        evorc, evxor, eveqv, evnand, evnor, evrlw, evrlwi, evslw, evslwi,
        evsrws, evsrwu, evsrwis, evsrwiu, evsplati, evsplatfi, evmergehi,
        evmergelo, evmergehilo, evmergelohi, evcmpgts, evcmpgtu, evcmplts,
        evcmpltu, evcmpeq, evsel, evldd, evlddx, evldw, evldwx, evldh,
        evldhx, evlwhe, evlwhex, evlwhou, evlwhoux, evlwhos, evlwhosx,
        evlwwsplat, evlwwsplatx, evlwhsplat, evlwhsplatx, evlhhesplat,
        evlhhesplatx, evlhousplat, evlhousplatx, evlhossplat, evlhossplatx,
        evstdd, evstddx, evstdw, evstdwx, evstdh, evstdhx, evstwwe,
        evstwwex, evstwwo, evstwwox, evstwhe, evstwhex, evstwho, evstwhox,
        evfsabs, evfsnabs, evfsneg, evfsadd, evfssub, evfsmul, evfsdiv,
        evfscmpgt, evfscmplt, evfscmpeq, evfststgt, evfststlt, evfststeq,
        evfscfui, evfsctuiz, evfscfsi, evfscfuf, evfscfsf, evfsctui,
        evfsctsi, evfsctsiz, evfsctuf, evfsctsf, evsabs, evsnabs, evsneg,
        evsadd, evssub, evsmul, evsdiv, evscmpgt, evsgmplt, evsgmpeq,
        evststgt, evststlt, evststeq, evscfui, evscfsi, evscfuf, evscfsf,
        evsctui, evsctuiz, evsctsi, evsctsiz, evsctuf, evsctsf, evmhossf,
        evmhossfa, evmhosmf, evmhosmfa, evmhosmi, evmhosmia, evmhoumi,
        evmhoumia, evmhessf, evmhessfa, evmhesmf, evmhesmfa, evmhesmi,
        evmhesmia, evmheumi, evmheumia, evmhossfaaw, evmhossiaaw,
        evmhosmfaaw, evmhosmiaaw, evmhousiaaw, evmhoumiaaw, evmhessfaaw,
        evmhessiaaw, evmhesmfaaw, evmhesmiaaw, evmheusiaaw, evmheumiaaw,
        evmhossfanw, evmhossianw, evmhosmfanw, evmhosmianw, evmhousianw,
        evmhoumianw, evmhessfanw, evmhessianw, evmhesmfanw, evmhesmianw,
        evmheusianw, evmheumianw, evmhogsmfaa, evmhogsmiaa, evmhogumiaa,
        evmhegsmfaa, evmhegsmiaa, evmhegumiaa, evmhogsmfan, evmhogsmian,
        evmhogumian, evmhegsmfan, evmhegsmian, evmhegumian, evmwhssf,
        evmwhssfa, evmwhssfaa, evmwhssmaa, evmwhsmfaa, evmwhsmiaa,
        evmwhusiaa, evmwhumiaa, evmwhssfan, evmwhssian, evmwhsmfan,
        evmwhsmian, evmwhusian, evmwhumian, evmwhgssfaa, evmwhgsmfaa,
        evmwhgsmiaa, evmwhgumiaa, evmwhgssfan, evmwhgsmfan, evmwhgsmian,
        evmwhgumian, evmwhsmf, evmwhsmfa, evmshsmi, evmshsmia, evmshumi,
        evmshumia, evmmlssf, evmmlssfa, evmwlsmf, evmwlsmfa, evmwlumi,
        evmwlumia, evmwlssfaaw, evmwlssiaaw, evmwlsmfaaw, evmwlsmiaaw,
        evmwlusiaaw, evmwlumiaaw, evmwissfanw, evmwissianw, evmwlsmfanw,
        evmwlsmianw, evmwlusianw, evmwlumianw, evmwssf, evmwssfa,
        evmwsmf, evmwsmfa, evmwsmi, evmwsmia, evmwumi, evmwumia,
        evmwssfaa, evmwsmfaa, evmwsmiaa, evmwumiaa, evmwssfan, evmwsmfan,
        evmwsmian, evmwumian, evaddssiaaw, evaddsmiaaw, evaddusiaaw,
        evaddumiaaw, evsubfssiaaw, evsubfsmiaaw, evsubfusiaaw,
        evsubfumiaaw, evmra, evdivws, evdivws): New e500x2 Core Complex
        instructions.
        (rfmci): New machine check APU instruction.
        (isel): New integer select APU instructino.
        (icbtls, icbtlse, icblc, icblce, dcbtls, dcbtlse, dcbtstls,
        dcbtstlse, dcblc, dcblce): New cache control APU instructions.
        (mtspefscr, mfspefscr): New instructions.
        (mfpmr, mtpmr): New performance monitor APU instructions.
        (savecontext): New context cache APU instructions.
        (bblels, bbelr): New branch locking APU instructions.
        (bblels, bbelr): New instructions.
        (mftbl, mftbu, mftb): Set as CLASSIC instructions.  Add BOOKE alias.
2002-08-19 20:59:10 +00:00
Elena Zannoni 0449635dbd 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
From matthew green  <mrg@redhat.com>

        * ppc.h (PPC_OPCODE_SPE): New opcode flag for Powerpc e500
        instructions.
        (PPC_OPCODE_ISEL, PPC_OPCODE_BRLOCK, PPC_OPCODE_PMR,
        PPC_OPCODE_CACHELCK, PPC_OPCODE_RFMCI): New opcode flags for the
        e500x2 Integer select, branch locking, performance monitor,
        cache locking and machine check APUs, respectively.
        (PPC_OPCODE_EFS): New opcode type for efs* instructions.
        (PPC_OPCODE_CLASSIC): New opcode type for Classic PowerPC instructions.
2002-08-19 20:55:48 +00:00
Elena Zannoni 21283bebca 2002-08-19 Elena Zannoni <ezannoni@redhat.com>
* rs6000-tdep.c (TDEP): Delete macro.
        (branch_dest): Replace use of TDEP macro with its body.
        (rs6000_pop_frame): Ditto.
        (rs6000_push_arguments): Ditto.
        (rs6000_skip_trampoline_code): Ditto.
        (rs6000_frame_saved_pc): Ditto.
        (rs6000_frame_chain): Ditto.
        (rs6000_register_name): Ditto.
        (rs6000_register_byte): Ditto.
        (rs6000_register_raw_size): Ditto.
        (rs6000_register_virtual_type): Ditto.
        (rs6000_register_convertible): Ditto.
        (rs6000_convert_from_func_ptr_addr): Ditto.
2002-08-19 17:57:59 +00:00
Daniel Jacobowitz bf07299995 * config/mips/tm-linux.h (REALTIME_LO, REALTIME_HI): Define
conditionally.
        (JB_PC, JB_ELEMENT_SIZE): Rename to MIPS_LINUX_JB_PC and
        MIPS_LINUX_JB_ELEMENT_SIZE.
        * mips-linux-tdep.c (supply_gregset, fill_gregset): Use alloca
        for MAX_REGISTER_RAW_SIZE arrays.
        (mips_linux_get_longjmp_target): Use MIPS_LINUX_JB_PC and
        MIPS_LINUX_JB_ELEMENT_SIZE.
2002-08-19 14:24:56 +00:00
Pierre Muller 242f28010b * remove wrong patch about TYPE_CODE_FLAGS for pascal 2002-08-19 13:12:09 +00:00
Pierre Muller ed8f822aaf 2002-08-19 Pierre Muller <muller@ics.u-strasbg.fr>
* p-valprint.c (pascal_val_print): Add support for TYPE_CODE_FLAGS.
2002-08-19 12:08:07 +00:00
Pierre Muller 9b949a49f8 2002-08-19 Pierre Muller <muller@ics.u-strasbg.fr>
* i387-tdep.c (i387_print_float_info): Fix typo in comment.
2002-08-19 11:52:36 +00:00
Aidan Skinner 6d3e79c6c8 * Makefile.in (SFILES): Add ada-exp.y ada-lang.c ada-typeprint.c
ada-valprint.c ada-tasks.c.
	(YYFILES): Add ada-exp.y.
	(ada-exp.tab.c ada-lex.c ada-lang.o): New target.
	(ada-tasks.o ada-typeprint.o ada-valprint.o): New target.
	(ada-exp.tab.o): New target.
2002-08-19 10:52:20 +00:00
Alan Modra 9f88ba0968 * elf32-m68hc12.c (elf_backend_can_gc_sections): False. 2002-08-19 06:38:43 +00:00
Andrew Cagney 53c69bd7cd 2002-08-18 Andrew Cagney <ac131313@redhat.com>
* gdb.texinfo (Data): Add ``Vector Unit'' to menu.
2002-08-19 00:57:17 +00:00
Andrew Cagney 06c0b04e1c 2002-08-18 Andrew Cagney <ac131313@redhat.com>
* regcache.c (regcache_xfer_part): New function.
(regcache_raw_read_part): New function.
(regcache_raw_write_part): New function.
(regcache_cooked_read_part): New function.
(regcache_cooked_write_part): New function.
* regcache.h (regcache_raw_read_part): Declare.
(regcache_raw_write_part): Declare.
(regcache_cooked_read_part): Declare.
(regcache_cooked_write_part): Declare.
2002-08-19 00:43:41 +00:00
Alan Modra 0c528862c5 daily update 2002-08-19 00:00:05 +00:00
gdbadmin d90b1c99f7 *** empty log message *** 2002-08-19 00:00:02 +00:00
Daniel Jacobowitz 6d7fbb5a8b Fix PR gdb/655
* tui.c: Disable <termio.h> include.
2002-08-18 23:20:47 +00:00
Daniel Jacobowitz 92d1e33186 * remote.c (remote_open_1): Add async_p.
(remote_async_open_1): Delete.
        (open_remote_target): Delete.
        (remote_open, extended_remote_open): Update calls to remote_open_1.
        (remote_async_open, extended_remote_async_open): Call
        remote_open_1 instead of remote_async_open_1.
2002-08-18 23:17:57 +00:00
Mark Kettenis 247055dee0 * blockframe.c: Fix a few coding standard violations. 2002-08-18 22:40:15 +00:00
Mark Kettenis 0b7177103b * config/i386/nm-i386sco5.h (START_INFERIOR_TRAPS_EXPECTED): Moved
here from ...
* config/i386/tm-i386sco5.h: ... here.  File removed.
* config/i386/i386sco5.mt (TM_FILE): Set to tm-i386v4.h.
2002-08-18 22:23:32 +00:00
Mark Kettenis 26d28e1276 * config/i386/nm-i386v.h (START_INFERIOR_TRAPS_EXPECTED): New define. 2002-08-18 22:17:57 +00:00
Mark Kettenis 641eda3940 * config/i386/i386aout.mt (TDEPFILES): Add i387-tdep.o
(TM_FILE): Set to tm-i386.h.
* config/i386/i386v.mt (TM_FILE): Set to tm-i386.h.
* config/i386/tm-i386v.h: Remove file.
* config/i386/tm-ptx.h [!SEQUENT_PTX4]: Include "i386/tm-i386.h"
instead of "i386/tm-i386v.h".
(START_INFERIOR_TRAPS_EXPECTED): Remove define.
* config/i386/tm-symmetry: Include "i386/tm-i386.h" instead of
"i386/tm-i386v.h".
(START_INFERIOR_TRAPS_EXPECTED): Remove define.
* config/i386/tm-vxworks.h: Include "i386/tm-i386.h" instead of
"i386/tm-i386.h".
2002-08-18 22:14:24 +00:00
Mark Kettenis d4e0bab44f * config/i386/nm-i386v.h: Add protection against
multiple-inclusion.
(i386_register_u_addr): Remove prototype.
(register_u_addr): New prototype.
(REGISTER_U_ADDR): Redefine accordingly.
* i386v-nat.c: Improve several comments.
(i386_register_u_addr): Change signature and rename to
register_u_addr.  Use FP_REGNUM_P.  Rewrite slightly to get rid of
ubase variable.
2002-08-18 21:53:55 +00:00
Andrew Cagney 46cac009b7 2002-08-18 Andrew Cagney <ac131313@redhat.com>
* config/mips/tm-mips.h (STORE_RETURN_VALUE): Delete macro.
(DEPRECATED_EXTRACT_RETURN_VALUE): Delete macro.
* mips-tdep.c (mips_gdbarch_init): Set store_return_value and
deprecated_extract_return_value.
(mips_o32_push_arguments, mips_o64_push_arguments): Clone and
rename mips_o32o64_push_arguments.
(mips_gdbarch_init): Update.
(mips_extract_return_value): Delete.
(mips_o32_extract_return_value): Clone mips_extract_return_value.
(mips_o64_extract_return_value): Clone mips_extract_return_value.
(mips_eabi_extract_return_value): Clone mips_extract_return_value.
(mips_n32n64_extract_return_value): Clone
mips_extract_return_value.
(mips_store_return_value): Delete.
(mips_o32_store_return_value): Clone mips_store_return_value.
(mips_o64_store_return_value): Clone mips_store_return_value.
(mips_eabi_store_return_value): Clone mips_store_return_value.
(mips_n32n64_store_return_value): Clone mips_store_return_value.
2002-08-18 18:59:53 +00:00
Aidan Skinner 0c30c098d9 * ada-lang.c: Use gdb_string.h instead of <string.h>.
* ada-typeprint.c: Use gdb_string.h instead of <string.h>.
2002-08-18 18:24:29 +00:00
Aidan Skinner d2e4a39e32 * ada-lang.c: run through gdb_indent.sh
* ada-lang.h: run through gdb_indent.sh
        * ada-tasks.c: run through gdb_indent.sh
        * ada-typeprint.c: run through gdb_indent.sh
        * ada-valprint.c: run through gdb_indent.sh
2002-08-18 18:11:12 +00:00
Andrew Cagney 01fc4e33eb 2002-08-18 Andrew Cagney <ac131313@redhat.com>
* osabi.c (gdbarch_init_osabi): Don't complain about an unknown
ABI.
2002-08-18 17:59:57 +00:00
Mark Kettenis c38d82615e * i386b-nat.c [FETCH_INFERIOR_REGISTERS]: Remove dead code. 2002-08-18 17:37:17 +00:00
Mark Kettenis 222db64cbf * config/i386/nm-i386bsd.h (FLOAT_INFO): Remove redundant #undef.
* i386b-nat.c [FLOAT_INFO]: Remove dead code.
2002-08-18 17:28:50 +00:00
Mark Kettenis c2848c82ce * i386-tdep.c (i386_do_pop_frame, i386_store_return_value): Call
write_register_gen instead of write_register_bytes.
2002-08-18 17:18:45 +00:00
Mark Kettenis d8ee244c99 * NEWS: Mention that the i[3456]-*mach3*, i[3456]-*-mach* and
i[3456]-*-osf1mk* configurations have been made obsolete.
* configure.host: Make i[3456]86-*-mach3*, i[3456]86-*mach* and
i[3456]86-*-osf1mk* hosts obsolete.
* confighure.tgt: Make i[3456]86-*-mach3*, i[3456]86-*-osf1mk*
targets obsolete.
* config/i386/i386mach.mh, config/i386/nm-i386mach.h,
config/i386/xm-i386mach.h, config/i386/i386m3.mh,
config/i386/i386m3.mt, config/i386/nm-m3.h,
config/i386/tm-i386m3.h, config/i386/xm-i386m3.h,
config/i386/i386mk.mh, config/i386/i386mk.mt,
config/i386/tm-i386mk.h, config/i386/xm-i386mk.h: Make files
obsolete.
* i386mach-nat.c, i386m3-nat.c: Make files obsolete.
* Makefile.in (ALLDEPFILES): Remove i386mach.c i386m3-nat.c
(i386mach-nat.o, i386m3-nat.o):Make targets obsolete.
2002-08-18 16:32:14 +00:00
Andrew Cagney 61d8d407cd 2002-08-18 Andrew Cagney <ac131313@redhat.com>
* config/pa/tm-hppa.h (hppa_store_return_value): Declare.
(hppa_value_returned_from_stack): Declare.
(hppa_extract_return_value): Declare.
* config/pa/hppa.mt: New file.
* configure.tgt: Recognize hppa*-*-*.
* MAINTAINERS: Change HPPA target to hppa-elf.  Still broken.
2002-08-18 16:09:04 +00:00
Mark Kettenis 0c52bd593a * i386-sol2-tdep.c (_initialize_i386_sol2_tdep): Fix typo in
comment.
2002-08-18 14:47:59 +00:00
Mark Kettenis b5686e99e9 * top.c (gdb_rl_operate_and_get_next): Make sure
operate-and-get-next functions correctly even when the history
list is completely filled.
2002-08-18 12:39:03 +00:00
Andrew Cagney c1bab85b70 2002-08-17 Andrew Cagney <ac131313@redhat.com>
* config/ia64/ia64.mt: New file.
* config/alpha/alpha.mt: New file.
* MAINTAINERS: Change the alpha target to alpha-elf and IA-64 to
ia64-linux-gnu.  Mention that ia64-elf is broken.
* configure.tgt: Add alpha*-*-* and ia64*-*-* patterns.
2002-08-18 04:14:02 +00:00
Andrew Cagney 32089c7c02 2002-08-17 Andrew Cagney <ac131313@redhat.com>
* config/ia64/ia64.mt: New file.
* config/alpha/alpha.mt: New file.
* MAINTAINERS: Change the alpha target to alpha-elf and IA-64 to
ia64-linux-gnu.  Mention that ia64-elf is broken.
* configure.tgt: Add alpha*-*-* and ia64*-*-* patterns.
2002-08-18 04:00:47 +00:00
gdbadmin 23aadcd222 *** empty log message *** 2002-08-18 00:00:32 +00:00
Alan Modra 7012f1189c daily update 2002-08-18 00:00:05 +00:00
Andrew Cagney df622259f2 * elf.c (bfd_elf_get_elf_syms): Change type of `esym' to
`bfd_byte'.
2002-08-17 16:09:02 +00:00
Stan Cox 44c410de10 * elfxx-mips.c (_bfd_mips_elf_modify_segment_map): Use the
IRIX 6 segment layout for NEWABI.
2002-08-17 15:31:29 +00:00
Stan Cox cca86cc8d6 * config/obj-elf.c (obj_elf_change_section): Make non-static.
config/tc-mips.c (s_change_section): New function to support
	IRIX .section pseudo-op.
2002-08-17 15:09:29 +00:00
Mark Kettenis b4671f856b * i386-tdep.c (i386_svr4_init_abi, i386_nw_init_abi): Use
generic_func_frame_valid instead of func_frame_valid.
2002-08-17 11:39:38 +00:00
Mark Kettenis 1f36144cb0 * gdb.base/return.exp: Remove i*86-*-* from list of xfail'ed
targets.  The problem should be fixed now.
2002-08-17 10:22:01 +00:00
Nick Clifton 61cd567514 Revert previous delta - it was bogus. 2002-08-17 09:59:34 +00:00
Joel Brobecker c8edd8b484 * alpha-osf1-tdep.c (alpha_osf1_init_abi): Unfortunately,
procfs appears to be broken when debugging on multi-processor
        machines. So enable software single stepping in order to avoid
        using the procfs interface to do next/step operations, using
        internal breakpoints instead.

        * infrun.c (handle_inferior_event): Readjust the stop_pc by
        DECR_PC_AFTER_BREAK when hitting a single step breakpoint, to
        make this pc address equal to the value it would have if the
        system stepping capability was used. Also set a new flag used
        to ensure that we don't readjust the PC one more time later.

        * breakpoint.c (bpstat_stop_status): Do not adjust the PC
        address by DECR_PC_AFTER_BREAK when software single step is
        in use for this architecture, as this has already been taken
        care of in handle_inferior_event().
2002-08-17 06:12:52 +00:00
Joel Brobecker 238617f678 * infrun.c (handle_inferior_event): Minor reformatting, to make
a rather long condition expression easier to read.
2002-08-17 00:16:54 +00:00
Andrew Cagney 541a7aacdc Move gdbtk gunk to end of file. 2002-08-17 00:04:36 +00:00
gdbadmin b7ffab51d3 *** empty log message *** 2002-08-17 00:00:31 +00:00
Alan Modra e3612cba02 daily update 2002-08-17 00:00:04 +00:00
Andrew Cagney f92d4a7b00 2002-08-16 Andrew Cagney <ac131313@redhat.com>
* Makefile.in (copying.o): Separate out compile rule.
(hpux-thread.o, procfs.o, signals.o): Ditto.
(v850ice.o, z8k-tdep.o): Ditto.
(tui-file.o): Move to TUI section.
(xdr_ptrace.o, xdr_rdb.o, xdr_ld.o): Move to separate section.
(nindy.o, Onindy.o, ttyflush.o): Move to separate section.
2002-08-16 23:32:04 +00:00
Joel Brobecker 1cce71eb0e * i386-tdep.c (i386_pe_skip_trampoline_code): renamed from
skip_trampoline_code, for better namespace-proofing.

        * i386-tdep.h (i386_pe_skip_trampoline_code): Add declaration.
2002-08-16 22:44:00 +00:00