aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-03-14Mark latest entry in ChangeLog as "tiny change".Joel Brobecker1-1/+1
2012-03-14Fix -Wmissing-prototypes build warnings on Darwin.Joel Brobecker5-2/+25
gdb/ 2012-03-13 Josh Matthews <josh@joshmatthews.net> * darwin-nat-info.c (_initialize_darwin_info_commands): Add prototype. (darwin_debug_port_info): Make static. * darwin-nat.c (_initialize_darwin_inferior): Add prototype. * machoread.c (_initialize_machoread): Add prototype. * i386-darwin-nat.c (i386_darwin_dr_set, i386_darwin_dr_get) (i386_darwin_set_control, i386_darwin_get_control) i386_darwin_dr_set_addr, i386_darwin_get_addr) i386_darwin_get_status, i386_darwin_get_control): Comment out with HW_WATCHPOINT_NOT_YET_ENABLED macro.
2012-03-14Testcase for: "ax-gdb: Do not treat enums and bools as integers".Joel Brobecker3-0/+96
gdb/testsuite/ChangeLog: * gdb.base/enum_cond.c, gdb.base/enum_cond.exp: New testcase.
2012-03-14ax-gdb: Do not treat enums and bools as integers.Joel Brobecker2-6/+5
This patch fixes a problem when using gdb + gdbserver, and trying to break on a function when one of the (enum) parameters is equal to a certain value, and the size of that enum is 1 byte. (gdb) break mixed.adb:15 if light = green Breakpoint 2 at 0x402d5a: file mixed.adb, line 15. (gdb) cont Continuing. [Inferior 1 (process 9742) exited normally] The debugger should have stopped once when our function was call with light set to green. Here is what happens: Because we're using a recent GDBserver, GDB hands off the evaluation of the condition to GDBserver, by providing it in the Z0 packet. This is what GDB sends: $Z0,402d5a,1;X13,26000622100223ff1c16100219162022011327#cf I decoded the condition as follow: 260006 reg 6 -> push 2210 const8 0x10 -> push 02 add (stack now has 1 element equal to reg6 + 16) 23ff1c const16 0xff1c 1610 ext 16 (sign extend 16 bits) 02 add (stack now has 1 element equal to reg6 + 16 - 228) 19 ref32: Pop as addr, push 32bit value at addr. 1620 ext 32 (sign extend 32 bits) 2201 const8 0x01 13 equal 27 end The beginning of the agent expression can be explained by the address of symbol "light": (gdb) info addr light Symbol "light" is a variable at frame base reg $rbp offset 16+-228. However, the mistake is the "ext 32" operation (extend 32 bits), because our variable is *not* 32bits, only 8: (gdb) print light'size $5 = 8 But the reason why GDB decides to use a 32bit extension is because it overrides the symbol's type with a plain integer type in ax-gdb.c:gen_usual_unary... /* If the value is an enum or a bool, call it an integer. */ case TYPE_CODE_ENUM: case TYPE_CODE_BOOL: value->type = builtin_type (exp->gdbarch)->builtin_int; break; ... before calling require_rvalue. And of course, that causes the generator to generate a sizeof(int) extension of the result. One way to fix this would be to use an integer type of the correct size, but I do not understand why this is necessary. The two routines that use that information to generate the opcode down the line are gen_fetch (for a memory value), or gen_extend (for a register value). And they both have handling of enums and bools. So the fix we elected to implement was simply to remove that code. gdb/ChangeLog: * ax-gdb.c (gen_usual_unary): Remove special handling of enum and bool types.
2012-03-14testcase for "gdb-ax.c: Add handling of TYPE_CODE_RANGE types"Joel Brobecker5-0/+111
gdb/testsuite/ChangeLog: * gdb.ada/bp_range_type: New testcase.
2012-03-14ax-gdb.c: Add handling of TYPE_CODE_RANGE types.Joel Brobecker2-0/+7
This patch fixes an error that occurs with GDB + GDBserver when trying to insert a breakpoint with a condition that involves a range type. For instance: type INT_T is range 0 .. 1000; INT_VAR : INT_T := 12; And then trying to insert the breakpoint: (gdb) break foo.adb:18 if int_var > 15 Breakpoint 1 at 0x4021eb: file foo.adb, line 18. (gdb) cont Continuing. /[...]/ax-gdb.c:560: internal-error: gen_fetch: bad type code A problem internal to GDB has been detected, further debugging may prove unreliable. Quit this debugging session? (y or n) This patch fixes the problem by adding handling for range types in gen_fetch. gdb/ChangeLog: * ax-gdb.c (gen_fetch): Add handling for TYPE_CODE_RANGE types.
2012-03-14*** empty log message ***gdbadmin1-1/+1
2012-03-13daily updateAlan Modra1-1/+1
2012-03-13Minor cleanup in aix-thread.c:supply_fprs.Joel Brobecker2-3/+9
This is a minor cleanup that makes supply_fprs more consistent with how fill_fprs was written. gdb/ChangeLog: * aix-thread.c (supply_fprs): Make more consistent with fill_fprs.
2012-03-13Fix buffer overflow in aix-thread.c:fill_fprsJoel Brobecker2-1/+7
gdb/ 2012-03-08 Chris January <chris.january@allinea.com> * aix-thread.c (fill_sprs): Store the floating point registers at the correct offsets into vals.
2012-03-13 * NEWS: Mention symbol-reloading has been deleted.Doug Evans12-77/+30
* symfile.c (symbol_reloading): Delete. (show_symbol_reloading): Delete. (_initialize_symfile): Delete set/show symbol-reloading. doc/ * gdb.texinfo (Help): Change apropos example to use "alias" instead of "reload". (Symbols): Delete docs for set/show symbol-reloading. * gdbint.texinfo (Defining Other Architecture Features): Delete SYMBOL_RELOADING_DEFAULT. * refcard.tex: Delete reference to symbol-reloading. testsuite/ * gdb.base/default.exp: Delete tests for symbol-reloading. * gdb.base/help.exp: Ditto. * gdb.base/setshow.exp: Ditto. * gdb.base/gdb_history: Delete references to symbol-reloading.
2012-03-13 * dwarf2read.c (load_partial_comp_unit): Defer adding cu toDoug Evans2-8/+16
read_in_chain until we have successfully read it in. (load_full_comp_unit): Ditto. (read_signatured_type): Add comment.
2012-03-13Fix up last commit.Roland McGrath3-3/+3
2012-03-13gas/Roland McGrath24-86/+8953
2012-03-12 Roland McGrath <mcgrathr@google.com> * config/tc-arm.c (arm_frag_max_var): New function. * config/tc-arm.h: Declare it. (md_frag_max_var): New macro. * config/tc-i386.c (i386_frag_max_var): New function. * config/tc-i386.h: Declare it. (md_frag_max_var): New macro. * doc/as.texinfo (Bundle directives): New node. (Pseudo Ops): Add it to the menu. * NEWS: Mention new feature. * read.c [md_frag_max_var] (HANDLE_BUNDLE): New macro. [HANDLE_BUNDLE] (bundle_align_p2): New variable. [HANDLE_BUNDLE] (bundle_lock_frchain, bundle_lock_frag): New variables. [HANDLE_BUNDLE] (start_bundle, pending_bundle_size, finish_bundle): New functions. (assemble_one): New function if [HANDLE_BUNDLE], #define directly to md_assembly if not. (read_a_source_file): Call assemble_one in place of md_assemble. (read_a_source_file) [HANDLE_BUNDLE]: Check for unterminated .bundle_lock at end of processing. [HANDLE_BUNDLE] (s_bundle_align_mode, s_bundle_lock, s_bundle_unlock): New functions. [HANDLE_BUNDLE] (potable): Add their entries. * read.h: Declare new functions. gas/testsuite/ 2012-03-12 Roland McGrath <mcgrathr@google.com> * gas/i386/bundle-bad.s: New file. * gas/i386/bundle-bad.d: New file. * gas/i386/bundle-bad.l: New file. * gas/i386/i386.exp: Run it. * gas/arm/bundle.s: New file. * gas/arm/bundle.d: New file. * gas/arm/bundle-lock.s: New file. * gas/arm/bundle-lock.d: New file. * gas/i386/bundle.s: New file. * gas/i386/bundle.d: New file. * gas/i386/x86-64-bundle.s: New file. * gas/i386/x86-64-bundle.d: New file. * gas/i386/bundle-lock.s: New file. * gas/i386/bundle-lock.d: New file. * gas/i386/i386.exp: Run them.
2012-03-13[stabs] The address of Fortran common blocks may be > INT_MAX.Joel Brobecker2-2/+7
gdb/ 2012-03-08 Chris January <chris.january@allinea.com> * stabsread.c (fix_common_block): Change type of valu argument to CORE_ADDR.
2012-03-13[ppc/prologue] Support the "oril r29, r1, 0x0" insn.Joel Brobecker2-0/+14
gdb/ 2012-03-13 Chris January <chris.january@allinea.com> * rs6000-tdep.c (skip_prologue): Support the oril r29, r1, 0x0 instruction.
2012-03-13 * resolve.cc (Symbol_table::resolve): When merging common symbols,Ian Lance Taylor2-4/+20
keep the larger alignment.
2012-03-13gdb/Jan Kratochvil11-49/+237
* common/linux-procfs.c (linux_proc_get_int): New, from linux_proc_get_tgid, change its LWPID type to pid_t, add parameter field. (linux_proc_get_tgid): Only call linux_proc_get_int. (linux_proc_get_tracerpid): New. (linux_proc_pid_has_state): New, from linux_proc_pid_is_zombie. (linux_proc_pid_is_stopped, linux_proc_pid_is_zombie): Only call linux_proc_pid_has_state. * common/linux-procfs.h (linux_proc_get_tracerpid): New declaration. * common/linux-ptrace.c: Include linux-procfs.h and buffer.h. (linux_ptrace_attach_warnings): New. * common/linux-ptrace.h (struct buffer, linux_ptrace_attach_warnings): New declaration. * linux-nat.c: Include exceptions.h, linux-ptrace.h and buffer.h. (linux_nat_attach): New variables ex, buffer, message and message_s. Wrap to_attach by TRY_CATCH and call linux_ptrace_attach_warnings. gdb/gdbserver/ * linux-low.c (linux_attach_lwp_1): New variable buffer. Call linux_ptrace_attach_warnings. gdb/testsuite/ * gdb.base/attach-twice.c: New files. * gdb.base/attach-twice.exp: New files.
2012-03-13gdb/Jan Kratochvil26-54/+146
* Makefile.in (linux-ptrace.o): New. * common/linux-procfs.c (linux_proc_pid_is_zombie): New, from linux-nat.c. * common/linux-procfs.h (linux_proc_pid_is_zombie): New declaration. * common/linux-ptrace.c: New file. * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-ptrace.o. * config/arm/linux.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/mips/linux.mh: Likewise. * config/pa/linux.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/s390.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/xtensa/linux.mh: Likewise. * linux-nat.c (linux_lwp_is_zombie): Remove, move it to common/linux-procfs.c. (wait_lwp): Rename linux_lwp_is_zombie to linux_proc_pid_is_zombie. gdb/gdbserver/ * Makefile.in (linux-ptrace.o): New. * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*) (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*) (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*) (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux) (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ of these targets. * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
2012-03-132012-03-13 Hui Zhu <teawater@gmail.com>Pedro Alves7-29/+72
Pedro Alves <palves@redhat.com> * breakpoint.c (init_breakpoint_sal): New flags parameter. Handle CREATE_BREAKPOINT_FLAGS_INSERTED. (create_breakpoint_sal, create_breakpoints_sal) (base_breakpoint_create_breakpoints_sal) (tracepoint_create_breakpoints_sal) (strace_marker_create_breakpoints_sal): New flags parameter. Pass down. (break_command_1, handle_gnu_v3_exceptions, trace_command) (ftrace_command, strace_command): Adjust. (create_tracepoint_from_upload): Pass CREATE_BREAKPOINT_FLAGS_INSERTED. * breakpoint.h (enum breakpoint_create_flags): New. (create_breakpoint): New flags parameter. * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust. * python/py-breakpoint.c (bppy_init): Adjust. * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust. * spu-tdep.c (spu_catch_start): Adjust.
2012-03-132012-03-13 Pedro Alves <palves@redhat.com>Pedro Alves2-2/+34
Hui Zhu <teawater@gmail.com> Yao Qi <yao@codesourcery.com> * remote.c (struct remote_state): New field `starting_up'. (remote_start_remote): Set and clear it. (remote_can_download_tracepoint): If starting up, return false.
2012-03-13 * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't errorAlan Modra23-193/+65
on zero size dynbss symbol. * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise. * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise. * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise. * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise. * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise. * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise. * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise. * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise. * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise. * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise. * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise. * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise. * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise. * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise. * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise. * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise. * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise. * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
2012-03-13gdb:Yao Qi6-44/+110
* inferior.h (struct inferior): Remove fields any_syscall_count, syscalls_counts and total_syscalls_count. Move them to new struct catch_syscall_inferior_data in breakpoint.c. * breakpoint.c: Call DEF_VEC_I(int). (struct catch_syscall_inferior_data): New. (get_catch_syscall_inferior_data): New. (catch_syscall_inferior_data_cleanup): New. (insert_catch_syscall): Update to access data in struct catch_syscall_inferior_data. (insert_catch_syscall): Likewise. (remove_catch_syscall): Likewise. (remove_catch_syscall): Likewise. (is_syscall_catchpoint_enabled): Likewise. (add_catch_command): Likewise. (_initialize_breakpoint): Register cleanup. * breakpoint.h: Removed DEF_VEC_I(int). * dwarf2loc.c: Call DEF_VEC_I(int). * mi/mi-main.c: Likewise.
2012-03-13 PR binutils/3807Hans-Peter Nilsson2-3/+19
* binutils-all/objcopy.exp (localize-hidden-1): Correct xfailed mips-targets.
2012-03-13 * dwarf_reader.cc (Sized_dwarf_line_info::process_one_opcode): FixCary Coutant2-6/+10
handling of DW_LNE_define_file.
2012-03-13elfcpp/Cary Coutant4-2/+308
Update DWARF enums from ../include/dwarf2.h. * dwarf.h (enum DW_TAG): Add new DWARF-4 tags. (enum DW_FORM): Add new DWARF-4 and Fission extensions. (enum DW_AT): New enum. (enum DW_LINE_EXTENDED_OPS): Add new DWARF-4 opcode. (enum DW_ENCODING): Add new DWARF-4 encoding. (enum DW_OP): Add new DWARF-4 opcodes. (enum DW_CHILDREN): New enum. (enum DW_LANG): New enum. gold/ * reduced_debug_output.cc (Output_reduced_debug_info_section::get_die_end): Add new FORM codes to switch.
2012-03-13*** empty log message ***gdbadmin1-1/+1
2012-03-12daily updateAlan Modra1-1/+1
2012-03-12 * inf-ptrace.c (inf_ptrace_post_attach): Make static.Mark Kettenis2-1/+5
2012-03-12Add missing prototypes for build in ppx-aix.Joel Brobecker4-0/+12
gdb/ChangeLog: 2012-03-12 Chris January <chris.january@allinea.com> * aix-thread.c (_initialize_aix_thread): Add prototype. * rs6000-nat.c (_initialize_rs6000_nat): Ditto. * xcoffsolib.c (_initialize_xcoffsolib): Ditto.
2012-03-12amd64bsd-nat.c: Move "amd64bsd-nat.h" include...Joel Brobecker2-1/+6
... after include of "amd64-nat.h". gdb/ChangeLog: * amd64bsd-nat.c: Move #include of "amd64bsd-nat.h" after include of "amd64-nat.h".
2012-03-12 * buildsym.c (record_pending_block): Now static.Tom Tromey3-9/+10
* buildsym.h: (record_pending_block): Remove.
2012-03-122012-03-12 Andreas Tobler <andreast@fgznet.ch>Andreas Tobler2-0/+5
* amd64bsd-nat.c: Include amd64bsd-nat.h.
2012-03-12*** empty log message ***gdbadmin1-1/+1
2012-03-11daily updateAlan Modra1-1/+1
2012-03-11*** empty log message ***gdbadmin1-1/+1
2012-03-10daily updateAlan Modra1-1/+1
2012-03-10*** empty log message ***gdbadmin1-1/+1
2012-03-09include/opcode/Alan Modra23-20/+432
* ppc.h: Add PPC_OPCODE_ALTIVEC2, PPC_OPCODE_E6500, PPC_OPCODE_TMR. opcodes/ * ppc-dis.c (ppc_opts): Add entries for "e5500" and "e6500". * ppc-opc.c (insert_ls, TMR, ESYNC, XSYNCLE_MASK): New. (PPCVEC2, PPCTMR, E6500): New short names. (powerpc_opcodes): Add vabsdub, vabsduh, vabsduw, dni, mvidsplt, mviwsplt, icblq., mftmr, mttmr, dcblq., miso, lvexbx, lvexhx, lvexwx, stvexbx, stvexhx, stvexwx, lvepx, lvepxl, stvepx, stvepxl, lvtrx, lvtrxl, lvtlx, lvtlxl, stvfrx, stvfrxl, stvflx, stvflxl, lvswx, lvswxl, stvswx, stvswxl, lvsm mnemonics. Accept LS, ESYNC optional operands on sync instruction for E6500 target. bfd/ * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. * bfd-in2.h: Regenerate. * cpu-powerpc.c (bfd_powerpc_archs): Add entryies for bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500. gas/ * config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500. (ppc_handle_align): Add termination nop opcode for e500mc family. * doc/as.texinfo: Document options -me5500 and -me6500. * doc/c-ppc.texi: Likewise. gas/testsuite/ * gas/ppc/e500mc64_nop.s: New test case for e500mc family termination nops. * gas/ppc/e500mc64_nop.d: Likewise. * gas/ppc/e5500_nop.s: Likewise. * gas/ppc/e5500_nop.d: Likewise. * gas/ppc/e6500_nop.s: Likewise. * gas/ppc/e6500_nop.d: Likewise. * gas/ppc/e6500.s: New. * gas/ppc/e6500.d: Likewise. * gas/ppc/ppc.exp: Run e6500, e500mc64_nop, e5500_nop, and e6500_nop.
2012-03-09daily updateAlan Modra1-1/+1
2012-03-092012-03-09 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston3-2/+8
* COPYING.NEWLIB: Modify DJ Delorie license to include modification rights in clause as permitted by DJ Delorie. * COPYING.LIBGLOSS: Ditto.
2012-03-09 * dwarf2read.c (struct dwarf2_cu) <checked_producer,Tom Tromey2-10/+31
producer_is_gxx_lt_4_6>: New fields. (producer_is_gxx_lt_4_6): Use and update producer cache fields.
2012-03-09 * dwarf2read.c (dwarf2_attr): Avoid tail-recursive call.Tom Tromey2-13/+19
2012-03-092012-03-09 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2-11/+6
* COPYING.NEWLIB: Remove two unused licenses.
2012-03-09Restore R_386_IRELATIVE and R_X86_64_IRELATIVEH.J. Lu8-20/+34
bfd/ 2012-03-09 H.J. Lu <hongjiu.lu@intel.com> PR ld/13817 * bfd/elf32-i386.c (elf_i386_relocate_section): Restore R_386_IRELATIVE. * * elf64-x86-64.c (elf_x86_64_relocate_section): Restore R_X86_64_IRELATIVE. ld/testsuite/ 2012-03-09 H.J. Lu <hongjiu.lu@intel.com> PR ld/13817 * ld-i386/pr13302.d: Updated. * ld-x86-64/pr13082-5b.d: Likewise. * ld-x86-64/pr13082-6a.d: Likewise. * ld-x86-64/pr13082-6b.d: Likewise.
2012-03-09Fix a couple of ChangeLog entries.Joel Brobecker1-4/+2
2012-03-09 * lib/gdb.exp (gdb_get_line_number): Throw anKeith Seitz5-10/+17
error instead of returning -1. * gdb.base/break.exp: Remove unused variable bp_location5. * gdb.base/hbreak2.exp: Likewise. * gdb.base/sepdebug.exp: Likewise.
2012-03-092012-03-08 Yao Qi <yao@codesourcery.com>Yao Qi6-46/+187
Pedro Alves <palves@redhat.com> Fix PR server/13392. * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check offset of JMP insn. * tracepoint.c (remove_tracepoint): New. (cmd_qtdp): Call remove_tracepoint when failed to install. 2012-03-08 Yao Qi <yao@codesourcery.com> Pedro Alves <palves@redhat.com> Fix PR server/13392. * gdb.trace/change-loc.exp (tracepoint_change_loc_1): Remove kfail. (tracepoint_change_loc_2): Remove kfail. Return if failed to download tracepoints. * gdb.trace/pending.exp (pending_tracepoint_works): Likewise. (pending_tracepoint_resolved_during_trace): Likewise. (pending_tracepoint_installed_during_trace): Likewise. (pending_tracepoint_with_action_resolved): Likewise.
2012-03-09Add missing _initialize_ravenscar_sparc prototype.Joel Brobecker2-0/+8
This is required now that we compile GDB with -Wmissing-prototype. gdb/ChangeLog: * ravenscar-sparc-thread.c (_initialize_ravenscar_sparc): Add prototype.
2012-03-09Add missing _initialize_ravenscar prototype.Joel Brobecker2-0/+7
gdb/ChangeLog: * ravenscar-thread.c (_initialize_ravenscar): Add prototype.