GP-5051: Distinct qemu-system launcher.

This commit is contained in:
Dan 2024-12-04 08:43:26 -05:00
parent 954ff4e124
commit 7dd417b6be
16 changed files with 211 additions and 53 deletions

View file

@ -3,7 +3,7 @@
Module.manifest||GHIDRA||||END| Module.manifest||GHIDRA||||END|
README.md||GHIDRA||||END| README.md||GHIDRA||||END|
data/debugger-launchers/local-gdb.bat||GHIDRA||||END| data/debugger-launchers/local-gdb.bat||GHIDRA||||END|
data/debugger-launchers/qemu-gdb.bat||GHIDRA||||END| data/debugger-launchers/qemu-sys-gdb.bat||GHIDRA||||END|
data/debugger-launchers/remote-gdb.bat||GHIDRA||||END| data/debugger-launchers/remote-gdb.bat||GHIDRA||||END|
data/debugger-launchers/ssh-gdb.bat||GHIDRA||||END| data/debugger-launchers/ssh-gdb.bat||GHIDRA||||END|
data/debugger-launchers/ssh-gdbserver.bat||GHIDRA||||END| data/debugger-launchers/ssh-gdbserver.bat||GHIDRA||||END|

View file

@ -52,6 +52,7 @@ fi
target_image="$1" target_image="$1"
# No need to put QEMU_GDB on command line. It's already a recognized environment variable.
if [ -z "$TTY_TARGET" ] if [ -z "$TTY_TARGET" ]
then then
"$GHIDRA_LANG_EXTTOOL_qemu" $OPT_EXTRA_QEMU_ARGS $@ & "$GHIDRA_LANG_EXTTOOL_qemu" $OPT_EXTRA_QEMU_ARGS $@ &
@ -69,7 +70,6 @@ gdb_args=(
-ex "show version" -ex "show version"
-ex "python import ghidragdb" -ex "python import ghidragdb"
-ex "file \"$target_image\"" -ex "file \"$target_image\""
-ex "set args $target_args"
-ex "ghidra trace connect \"$GHIDRA_TRACE_RMI_ADDR\"" -ex "ghidra trace connect \"$GHIDRA_TRACE_RMI_ADDR\""
-ex "ghidra trace start" -ex "ghidra trace start"
-ex "ghidra trace sync-enable" -ex "ghidra trace sync-enable"

View file

@ -1,9 +1,9 @@
::@title qemu + gdb ::@title qemu-system + gdb
::@image-opt env:OPT_TARGET_IMG ::@image-opt env:OPT_TARGET_IMG
::@desc <html><body width="300px"> ::@desc <html><body width="300px">
::@desc <h3>Launch with <tt>qemu</tt> and connect with <tt>gdb</tt></h3> ::@desc <h3>Launch with <tt>qemu-system</tt> and connect with <tt>gdb</tt></h3>
::@desc <p> ::@desc <p>
::@desc This will launch the target on the local machine using <tt>qemu</tt>. ::@desc This will launch the target on the local machine using <tt>qemu-system</tt>.
::@desc Then in a second terminal, it will connect <tt>gdb</tt> to QEMU's GDBstub. ::@desc Then in a second terminal, it will connect <tt>gdb</tt> to QEMU's GDBstub.
::@desc For setup instructions, press <b>F1</b>. ::@desc For setup instructions, press <b>F1</b>.
::@desc </p> ::@desc </p>
@ -12,12 +12,11 @@
::@icon icon.debugger ::@icon icon.debugger
::@help TraceRmiLauncherServicePlugin#gdb_qemu ::@help TraceRmiLauncherServicePlugin#gdb_qemu
::@env OPT_TARGET_IMG:file!="" "Image" "The target binary executable image" ::@env OPT_TARGET_IMG:file!="" "Image" "The target binary executable image"
::@env OPT_TARGET_ARGS:str="" "Arguments" "Command-line arguments to pass to the target" ::@env GHIDRA_LANG_EXTTOOL_qemu_system:file="" "QEMU command" "The path to qemu-system for the target architecture."
::@env GHIDRA_LANG_EXTTOOL_qemu:file="" "QEMU command" "The path to qemu for the target architecture."
::@env QEMU_GDB:int=1234 "QEMU Port" "Port for gdb connection to qemu" ::@env QEMU_GDB:int=1234 "QEMU Port" "Port for gdb connection to qemu"
::@env OPT_EXTRA_QEMU_ARGS:str="" "Extra qemu arguments" "Extra arguments to pass to qemu. Use with care." ::@env OPT_EXTRA_QEMU_ARGS:str="" "Extra qemu arguments" "Extra arguments to pass to qemu. Use with care."
::@env OPT_GDB_PATH:file="gdb-multiarch" "gdb command" "The path to gdb. Omit the full path to resolve using the system PATH." ::@env OPT_GDB_PATH:file="gdb-multiarch" "gdb command" "The path to gdb. Omit the full path to resolve using the system PATH."
::@env OPT_EXTRA_TTY:bool=false "QEMU TTY" "Provide a separate terminal emulator for the target." ::@env OPT_EXTRA_TTY:bool=false "QEMU TTY" "Provide a separate terminal emulator for qemu."
@echo off @echo off
set PYTHONPATH0=%GHIDRA_HOME%\Ghidra\Debug\Debugger-agent-gdb\pypkg\src set PYTHONPATH0=%GHIDRA_HOME%\Ghidra\Debug\Debugger-agent-gdb\pypkg\src
@ -33,9 +32,9 @@ IF EXIST %GHIDRA_HOME%\ghidra\.git (
set PYTHONPATH=%PYTHONPATH1%;%PYTHONPATH0%;%PYTHONPATH% set PYTHONPATH=%PYTHONPATH1%;%PYTHONPATH0%;%PYTHONPATH%
IF "%OPT_EXTRA_TTY%"=="true" ( IF "%OPT_EXTRA_TTY%"=="true" (
start "qemu" "%GHIDRA_LANG_EXTTOOL_qemu%" %OPT_EXTRA_QEMU_ARGS% -gdb tcp::%QEMU_GDB% -S "%OPT_TARGET_IMG%" %OPT_TARGET_ARGS% start "qemu" "%GHIDRA_LANG_EXTTOOL_qemu%" %OPT_EXTRA_QEMU_ARGS% -gdb tcp::%QEMU_GDB% -S "%OPT_TARGET_IMG%"
) ELSE ( ) ELSE (
start /B "qemu" "%GHIDRA_LANG_EXTTOOL_qemu%" %OPT_EXTRA_QEMU_ARGS% -gdb tcp::%QEMU_GDB% -S "%OPT_TARGET_IMG%" %OPT_TARGET_ARGS% start /B "qemu" "%GHIDRA_LANG_EXTTOOL_qemu%" %OPT_EXTRA_QEMU_ARGS% -gdb tcp::%QEMU_GDB% -S "%OPT_TARGET_IMG%"
) )
:: Give QEMU a moment to open the socket :: Give QEMU a moment to open the socket
@ -48,7 +47,6 @@ powershell -nop -c "& {sleep -m 100}"
-ex "show version" ^ -ex "show version" ^
-ex "python import ghidragdb" ^ -ex "python import ghidragdb" ^
-ex "target exec '%OPT_TARGET_IMG%'" ^ -ex "target exec '%OPT_TARGET_IMG%'" ^
-ex "set args %OPT_TARGET_ARGS%" ^
-ex "ghidra trace connect '%GHIDRA_TRACE_RMI_ADDR%'" ^ -ex "ghidra trace connect '%GHIDRA_TRACE_RMI_ADDR%'" ^
-ex "ghidra trace start" ^ -ex "ghidra trace start" ^
-ex "ghidra trace sync-enable" ^ -ex "ghidra trace sync-enable" ^

View file

@ -0,0 +1,90 @@
#!/usr/bin/bash
## ###
# IP: GHIDRA
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
##
#@title qemu-system + gdb
#@image-opt arg:1
#@desc <html><body width="300px">
#@desc <h3>Launch with <tt>qemu-system</tt> and connect with <tt>gdb</tt></h3>
#@desc <p>
#@desc This will launch the target on the local machine using <tt>qemu-system</tt>.
#@desc Then in a second terminal, it will connect <tt>gdb</tt> to QEMU's GDBstub.
#@desc For setup instructions, press <b>F1</b>.
#@desc </p>
#@desc </body></html>
#@menu-group cross
#@icon icon.debugger
#@help TraceRmiLauncherServicePlugin#gdb_qemu
#@arg :file! "Image" "The target binary executable image"
#@env GHIDRA_LANG_EXTTOOL_qemu_system:file="" "QEMU command" "The path to qemu-system for the target architecture."
#@env QEMU_GDB:int=1234 "QEMU Port" "Port for gdb connection to qemu"
#@env OPT_EXTRA_QEMU_ARGS:str="" "Extra qemu arguments" "Extra arguments to pass to qemu. Use with care."
#@env OPT_GDB_PATH:file="gdb-multiarch" "gdb command" "The path to gdb. Omit the full path to resolve using the system PATH."
#@env OPT_EXTRA_TTY:bool=false "QEMU TTY" "Provide a separate terminal emulator for qemu."
#@env OPT_PULL_ALL_SECTIONS:bool=false "Pull all section mappings" "Force gdb to send all mappings to Ghidra. This can be costly (see help)."
#@tty TTY_TARGET if env:OPT_EXTRA_TTY
if [ -d ${GHIDRA_HOME}/ghidra/.git ]
then
export PYTHONPATH=$GHIDRA_HOME/ghidra/Ghidra/Debug/Debugger-agent-gdb/build/pypkg/src:$PYTHONPATH
export PYTHONPATH=$GHIDRA_HOME/ghidra/Ghidra/Debug/Debugger-rmi-trace/build/pypkg/src:$PYTHONPATH
elif [ -d ${GHIDRA_HOME}/.git ]
then
export PYTHONPATH=$GHIDRA_HOME/Ghidra/Debug/Debugger-agent-gdb/build/pypkg/src:$PYTHONPATH
export PYTHONPATH=$GHIDRA_HOME/Ghidra/Debug/Debugger-rmi-trace/build/pypkg/src:$PYTHONPATH
else
export PYTHONPATH=$GHIDRA_HOME/Ghidra/Debug/Debugger-agent-gdb/pypkg/src:$PYTHONPATH
export PYTHONPATH=$GHIDRA_HOME/Ghidra/Debug/Debugger-rmi-trace/pypkg/src:$PYTHONPATH
fi
target_image="$1"
if [ -z "$TTY_TARGET" ]
then
"$GHIDRA_LANG_EXTTOOL_qemu" $OPT_EXTRA_QEMU_ARGS -gdb tcp::$QEMU_GDB -S $1 &
else
"$GHIDRA_LANG_EXTTOOL_qemu" $OPT_EXTRA_QEMU_ARGS -gdb tcp::$QEMU_GDB -S $1 <$TTY_TARGET >$TTY_TARGET 2>&1 &
fi
# Give QEMU a moment to open the socket
sleep 0.1
gdb_args=(
-q
-ex "set pagination off"
-ex "set confirm off"
-ex "show version"
-ex "python import ghidragdb"
-ex "file \"$target_image\""
-ex "ghidra trace connect \"$GHIDRA_TRACE_RMI_ADDR\""
-ex "ghidra trace start"
-ex "ghidra trace sync-enable"
-ex "target remote localhost:$QEMU_GDB"
-ex "set confirm on"
-ex "set pagination on"
)
# If using OPT_PULL_ALL_SECTIONS, append instructions to push all sections from qemu
if [ "$OPT_PULL_ALL_SECTIONS" = "true" ]
then
gdb_args+=(
-ex "ghidra trace tx-start put-all-sections"
-ex "ghidra trace put-sections -all-objects"
-ex "ghidra trace tx-commit"
)
fi
IFS=""
"$OPT_GDB_PATH" ${gdb_args[*]}

View file

@ -112,6 +112,12 @@
properly-configured build of GDB for your target. If you are working with an embedded system, properly-configured build of GDB for your target. If you are working with an embedded system,
it is probably safest to install the "multiarch" build of GDB from your package manager.</P> it is probably safest to install the "multiarch" build of GDB from your package manager.</P>
<P>The plain "<TT>gdb</TT>" launch script defaults to launching the current program as a
user-mode process on the local system. If there is no current program, or if you clear the
<B>Image</B> option, this launcher will only start <TT>gdb</TT> and get it connected to a
Ghidra trace. You may then manually start or connect to your target. Note that this may also
require manual mapping of your program database(s) to the target memory.</P>
<H4><A name="gdb_setup"></A>Setup</H4> <H4><A name="gdb_setup"></A>Setup</H4>
<P>You must have GDB installed on the local system, and it must embed the Python 3 interpreter. <P>You must have GDB installed on the local system, and it must embed the Python 3 interpreter.
@ -157,6 +163,13 @@ python3 -m pip install --no-index -f Debugger-rmi-trace/pypkg/dist -f Debugger-a
<TT>sys.version</TT> indicates 3.10, you should invoke Pip using <TT>python3.10 -m <TT>sys.version</TT> indicates 3.10, you should invoke Pip using <TT>python3.10 -m
pip</TT>.</P> pip</TT>.</P>
<P><B>Warning</B>: Modern Linux distributions are beginning to adopt PEP 668, which prevents
installation of Python packages outside of a virtual environment (venv) <EM>even for non-root
user accounts</EM>. Unfortunately, <TT>gdb</TT> does not seem to honor the currently activated
venv, and so such configurations are not officially supported. You may be able to work around
this by modifying the <TT>PYTHONPATH</TT> lines of the launcher script, but your mileage may
vary. For now, we recommend using the <TT>--break-system-packages</TT> argument with Pip.</P>
<H4>Options</H4> <H4>Options</H4>
<DIV class="image"> <DIV class="image">
@ -339,15 +352,21 @@ target remote | ssh user@host gdbserver - /path/to/image
<H3><A name="gdb_qemu"></A>QEMU + GDB</H3> <H3><A name="gdb_qemu"></A>QEMU + GDB</H3>
<P>This launcher orchestrates a QEMU user-mode target and connects to it using our Python <P>These launchers orchestrate a QEMU user- or system-mode target and connect to it using our
plugin for GDB. Ghidra will inspect the current program and attempt to map its language to the Python plugin for GDB. Ghidra will inspect the current program and attempt to map its language
appropriate QEMU command, but this may fail, or be subtly incorrect.</P> to the appropriate QEMU command, but due to subtle errors and/or outright failure, the default
value for the <B>QEMU command</B> option often requires careful inspection.</P>
<P>There are two separate scripts for QEMU, one for user mode and one for system mode. Note
that QEMU does not support user-mode emulation on Windows, so that script is not available on
Windows hosts.</P>
<H4>Setup</H4> <H4>Setup</H4>
<P>You must acquire a version of QEMU and GDB that support the target architecture. On many <P>You must acquire versions of QEMU and GDB that support the target architecture. Aside from
distributions of Linux, you can install <TT>gdb-multiarch</TT>. Follow the steps given in <A the copy of QEMU required, setup is the same whether for user or system mode. As for GDB, on
href="#gdb_setup">GDB Setup</A>.</P> many distributions of Linux, you can install <TT>gdb-multiarch</TT>. Follow the steps given in
<A href="#gdb_setup">GDB Setup</A>.</P>
<H4>Options</H4> <H4>Options</H4>
@ -356,17 +375,18 @@ target remote | ssh user@host gdbserver - /path/to/image
in GDB, but is passed to QEMU. This will also provide the name to GDB using its "<TT>file in GDB, but is passed to QEMU. This will also provide the name to GDB using its "<TT>file
...</TT>" command.</LI> ...</TT>" command.</LI>
<LI><B>Arguments</B>: These are the command-line arguments to pass into the target process. <LI><B>Arguments</B> (User-mode only): These are the command-line arguments to pass into the
These are passed as is on QEMU's command line.</LI> target process. These are passed as is on QEMU's command line.</LI>
<LI><B>QEMU command</B>: The command or path to QEMU.</LI> <LI><B>QEMU command</B>: The command or path to QEMU.</LI>
<LI><B>QEMU Port</B>: An available TCP port for QEMU to listen on for GDB.</LI> <LI><B>QEMU Port</B>: An available TCP port for QEMU to listen on for GDB.</LI>
<LI><B>Extra <TT>qemu</TT> arguments</B>: Extra arguments to pass to <TT>qemu</TT>. These are <LI><B>Extra <TT>qemu</TT> arguments</B>: Extra arguments to pass to <TT>qemu</TT> or
inserted immediately after the <TT>qemu</TT> command but before the target program and <TT>qemu-system</TT>. These are inserted immediately after the <TT>qemu</TT> command but
arguments. Beware that syntax errors may cause strange behavior, and that not all features before the target image. Run <TT>qemu<EM>[-system]-arch</EM> --help</TT> to see the options
may be compatible with this launcher.</LI> supported. Beware that syntax errors may cause strange behavior, and that not all QEMU
features may be compatible with Ghidra.</LI>
<LI><B><TT>gdb</TT> command</B>: This works the same as in GDB, but defaults to <LI><B><TT>gdb</TT> command</B>: This works the same as in GDB, but defaults to
"gdb-multiarch."</LI> "gdb-multiarch."</LI>
@ -374,12 +394,14 @@ target remote | ssh user@host gdbserver - /path/to/image
<LI><B>QEMU TTY</B>: This works similarly as in GDB, but just runs QEMU in the second <LI><B>QEMU TTY</B>: This works similarly as in GDB, but just runs QEMU in the second
Terminal window.</LI> Terminal window.</LI>
<LI><B>Pull all section mappings</B>: For some targets the memory mappings for the target <LI><B>Pull all section mappings</B>: For some targets the memory mappings cannot be
are not correctly relayed to Ghidra. This setting forces gdb to send the mappings to Ghidra. correctly conveyed to Ghidra module by module. This setting forces GDB to send the
This option is disabled by default because for large targets the action could be expensive, <EM>section</EM> mappings to Ghidra. <B>Warning</B>: This operation is expensive for large
so it should only be enabled if required (e.g. unable to correctly place breakpoints). targets, so it should only be enabled if required (e.g. unable to correctly place
<I>Auto-Map by Section</I> must be enabled in the Modules debugger window for this to work. breakpoints). <A href=
</LI> "help/topics/DebuggerModulesPlugin/DebuggerModulesPlugin.html#auto_map">Auto-Map</A> by
Section is required when this option is enabled, or else address translation may
<EM>still</EM> be incorrect.</LI>
</UL> </UL>
<H3><A name="gdb_wine"></A>Wine + GDB</H3> <H3><A name="gdb_wine"></A>Wine + GDB</H3>
@ -488,30 +510,6 @@ target remote [host]:[port]
<TT>gdb-multiarch</TT>.</LI> <TT>gdb-multiarch</TT>.</LI>
</UL> </UL>
<H3><A name="gdb_raw"></A>Raw GDB</H3>
<P>This is hardly a launcher at all. It simply starts <TT>gdb</TT>, gets it connected to
Ghidra, and starts a trace. This allows you to create or connect to whatever target your copy
of GDB supports. While perhaps the most flexible, it is also the least convenient. It requires
no image, so it can be used without a current program. That also means it will make no effort
to ensure your target maps to the current program, if you happen to have one. You may have to
do it manually.</P>
<H4>Setup</H4>
<P>Follow the steps given in <A href="#gdb_setup">GDB Setup</A>.</P>
<H4>Options</H4>
<UL>
<LI><B><TT>gdb</TT> command</B>: This works the same as in GDB.</LI>
<LI><B>Architecture</B>: Because the trace is created before the target, you must specify the
target's architecture. This is passed as is to "<TT>set arch ...</TT>" immediately before the
"<TT>target ...</TT>" command. Enter "<TT>set arch</TT>" into a GDB session outside of Ghidra
to see the list of available options in your configuration.</LI>
</UL>
<H2>Stock LLDB Launchers</H2> <H2>Stock LLDB Launchers</H2>
<P>The following launchers based on the LLDB Debugger are included out of the box:</P> <P>The following launchers based on the LLDB Debugger are included out of the box:</P>

View file

@ -18,6 +18,7 @@
<external_name tool="IDA-PRO" name="68K"/> <external_name tool="IDA-PRO" name="68K"/>
<external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/>
<external_name tool="qemu" name="qemu-m68k"/> <external_name tool="qemu" name="qemu-m68k"/>
<external_name tool="qemu_system" name="qemu-system-m68k"/>
</language> </language>
<language processor="68000" <language processor="68000"
endian="big" endian="big"
@ -34,6 +35,7 @@
<external_name tool="IDA-PRO" name="68030"/> <external_name tool="IDA-PRO" name="68030"/>
<external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/>
<external_name tool="qemu" name="qemu-m68k"/> <external_name tool="qemu" name="qemu-m68k"/>
<external_name tool="qemu_system" name="qemu-system-m68k"/>
</language> </language>
<language processor="68000" <language processor="68000"
endian="big" endian="big"
@ -52,6 +54,7 @@
<external_name tool="IDA-PRO" name="68020EX"/> <external_name tool="IDA-PRO" name="68020EX"/>
<external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/>
<external_name tool="qemu" name="qemu-m68k"/> <external_name tool="qemu" name="qemu-m68k"/>
<external_name tool="qemu_system" name="qemu-system-m68k"/>
</language> </language>
<language processor="68000" <language processor="68000"
endian="big" endian="big"
@ -68,5 +71,6 @@
<external_name tool="IDA-PRO" name="colfire"/> <external_name tool="IDA-PRO" name="colfire"/>
<external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="68000.dwarf"/>
<external_name tool="qemu" name="qemu-m68k"/> <external_name tool="qemu" name="qemu-m68k"/>
<external_name tool="qemu_system" name="qemu-system-m68k"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -17,6 +17,7 @@
<external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/>
<external_name tool="Golang.register.info.file" name="AARCH64_golang.register.info"/> <external_name tool="Golang.register.info.file" name="AARCH64_golang.register.info"/>
<external_name tool="qemu" name="qemu-aarch64"/> <external_name tool="qemu" name="qemu-aarch64"/>
<external_name tool="qemu_system" name="qemu-system-aarch64"/>
</language> </language>
<language processor="AARCH64" <language processor="AARCH64"
endian="big" endian="big"
@ -35,6 +36,7 @@
<external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/>
<external_name tool="Golang.register.info.file" name="AARCH64_golang.register.info"/> <external_name tool="Golang.register.info.file" name="AARCH64_golang.register.info"/>
<external_name tool="qemu" name="qemu-aarch64_be"/> <external_name tool="qemu" name="qemu-aarch64_be"/>
<external_name tool="qemu_system" name="qemu-system-aarch64"/>
</language> </language>
<language processor="AARCH64" <language processor="AARCH64"
endian="little" endian="little"
@ -52,6 +54,7 @@
<external_name tool="gnu" name="aarch64:ilp32"/> <external_name tool="gnu" name="aarch64:ilp32"/>
<external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/>
<external_name tool="qemu" name="qemu-aarch64"/> <external_name tool="qemu" name="qemu-aarch64"/>
<external_name tool="qemu_system" name="qemu-system-aarch64"/>
</language> </language>
<language processor="AARCH64" <language processor="AARCH64"
endian="big" endian="big"
@ -70,5 +73,6 @@
<external_name tool="gnu" name="aarch64:ilp32"/> <external_name tool="gnu" name="aarch64:ilp32"/>
<external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="AARCH64.dwarf"/>
<external_name tool="qemu" name="qemu-aarch64_be"/> <external_name tool="qemu" name="qemu-aarch64_be"/>
<external_name tool="qemu_system" name="qemu-system-aarch64"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -21,6 +21,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -41,6 +42,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -78,6 +80,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -96,6 +99,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -116,6 +120,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -151,6 +156,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -173,6 +179,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -194,6 +201,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -250,6 +258,7 @@
<!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled --> <!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled -->
<!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> --> <!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> -->
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -271,6 +280,7 @@
<!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled --> <!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled -->
<!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> --> <!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> -->
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -290,6 +300,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -309,6 +320,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -326,6 +338,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -343,6 +356,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -361,6 +375,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -379,6 +394,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -400,6 +416,7 @@
<external_name tool="IDA-PRO" name="arm"/> <external_name tool="IDA-PRO" name="arm"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-arm"/> <external_name tool="qemu" name="qemu-arm"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
<language processor="ARM" <language processor="ARM"
@ -421,6 +438,7 @@
<external_name tool="IDA-PRO" name="armb"/> <external_name tool="IDA-PRO" name="armb"/>
<external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
<external_name tool="qemu" name="qemu-armeb"/> <external_name tool="qemu" name="qemu-armeb"/>
<external_name tool="qemu_system" name="qemu-system-arm"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -42,6 +42,7 @@
<compiler name="default" spec="lp64f.cspec" id="default"/> <compiler name="default" spec="lp64f.cspec" id="default"/>
<external_name tool="gnu" name="Loongarch64"/> <external_name tool="gnu" name="Loongarch64"/>
<external_name tool="qemu" name="qemu-mips64el"/> <external_name tool="qemu" name="qemu-mips64el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
<language processor="Loongarch" <language processor="Loongarch"
@ -57,6 +58,7 @@
<compiler name="default" spec="lp64d.cspec" id="default"/> <compiler name="default" spec="lp64d.cspec" id="default"/>
<external_name tool="gnu" name="Loongarch64"/> <external_name tool="gnu" name="Loongarch64"/>
<external_name tool="qemu" name="qemu-mips64el"/> <external_name tool="qemu" name="qemu-mips64el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -18,6 +18,7 @@
<external_name tool="IDA-PRO" name="mipsb"/> <external_name tool="IDA-PRO" name="mipsb"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips"/> <external_name tool="qemu" name="qemu-mips"/>
<external_name tool="qemu_system" name="qemu-system-mips"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -37,6 +38,7 @@
<external_name tool="IDA-PRO" name="mipsl"/> <external_name tool="IDA-PRO" name="mipsl"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsel"/> <external_name tool="qemu" name="qemu-mipsel"/>
<external_name tool="qemu_system" name="qemu-system-mipsel"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="big" endian="big"
@ -52,6 +54,7 @@
<external_name tool="IDA-PRO" name="mipsb"/> <external_name tool="IDA-PRO" name="mipsb"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips"/> <external_name tool="qemu" name="qemu-mips"/>
<external_name tool="qemu_system" name="qemu-system-mips"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -67,6 +70,7 @@
<external_name tool="IDA-PRO" name="mipsl"/> <external_name tool="IDA-PRO" name="mipsl"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsel"/> <external_name tool="qemu" name="qemu-mipsel"/>
<external_name tool="qemu_system" name="qemu-system-mipsel"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="big" endian="big"
@ -84,6 +88,7 @@
<external_name tool="IDA-PRO" name="r5900r"/> <external_name tool="IDA-PRO" name="r5900r"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips64"/> <external_name tool="qemu" name="qemu-mips64"/>
<external_name tool="qemu_system" name="qemu-system-mips64"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -102,6 +107,7 @@
<external_name tool="IDA-PRO" name="r5900l"/> <external_name tool="IDA-PRO" name="r5900l"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips64el"/> <external_name tool="qemu" name="qemu-mips64el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="big" endian="big"
@ -149,6 +155,7 @@
<external_name tool="IDA-PRO" name="r5900r"/> <external_name tool="IDA-PRO" name="r5900r"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips64"/> <external_name tool="qemu" name="qemu-mips64"/>
<external_name tool="qemu_system" name="qemu-system-mips64"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -166,6 +173,7 @@
<external_name tool="IDA-PRO" name="r5900l"/> <external_name tool="IDA-PRO" name="r5900l"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mips64el"/> <external_name tool="qemu" name="qemu-mips64el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="big" endian="big"
@ -187,6 +195,7 @@
<external_name tool="IDA-PRO" name="r5900r"/> <external_name tool="IDA-PRO" name="r5900r"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsn32"/> <external_name tool="qemu" name="qemu-mipsn32"/>
<external_name tool="qemu_system" name="qemu-system-mips64"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -209,6 +218,7 @@
<external_name tool="IDA-PRO" name="r5900l"/> <external_name tool="IDA-PRO" name="r5900l"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsn32el"/> <external_name tool="qemu" name="qemu-mipsn32el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -268,6 +278,7 @@
<external_name tool="IDA-PRO" name="r5900r"/> <external_name tool="IDA-PRO" name="r5900r"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsn32"/> <external_name tool="qemu" name="qemu-mipsn32"/>
<external_name tool="qemu_system" name="qemu-system-mips64"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="little" endian="little"
@ -289,6 +300,7 @@
<external_name tool="IDA-PRO" name="r5900l"/> <external_name tool="IDA-PRO" name="r5900l"/>
<external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="mips.dwarf"/>
<external_name tool="qemu" name="qemu-mipsn32el"/> <external_name tool="qemu" name="qemu-mipsn32el"/>
<external_name tool="qemu_system" name="qemu-system-mips64el"/>
</language> </language>
<language processor="MIPS" <language processor="MIPS"
endian="big" endian="big"

View file

@ -17,6 +17,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -50,6 +51,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64"/> <external_name tool="qemu" name="qemu-ppc64"/>
<external_name tool="qemu_system" name="qemu-system-ppc64"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="big" endian="big"
@ -67,6 +69,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64abi32"/> <external_name tool="qemu" name="qemu-ppc64abi32"/>
<external_name tool="qemu_system" name="qemu-system-ppc64"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -100,6 +103,7 @@
<external_name tool="IDA-PRO" name="ppcl"/> <external_name tool="IDA-PRO" name="ppcl"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64le"/> <external_name tool="qemu" name="qemu-ppc64le"/>
<external_name tool="qemu_system" name="qemu-system-ppc64le"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="big" endian="big"
@ -116,6 +120,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -148,6 +153,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="big" endian="big"
@ -164,6 +170,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -197,6 +204,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -229,6 +237,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc"/> <external_name tool="qemu" name="qemu-ppc"/>
<external_name tool="qemu_system" name="qemu-system-ppc"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -261,6 +270,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64abi32"/> <external_name tool="qemu" name="qemu-ppc64abi32"/>
<external_name tool="qemu_system" name="qemu-system-ppc64"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -295,6 +305,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64abi32"/> <external_name tool="qemu" name="qemu-ppc64abi32"/>
<external_name tool="qemu_system" name="qemu-system-ppc64"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -328,6 +339,7 @@
<external_name tool="IDA-PRO" name="ppc"/> <external_name tool="IDA-PRO" name="ppc"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64"/> <external_name tool="qemu" name="qemu-ppc64"/>
<external_name tool="qemu_system" name="qemu-system-ppc64"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="little" endian="little"
@ -344,6 +356,7 @@
<external_name tool="IDA-PRO" name="ppcl"/> <external_name tool="IDA-PRO" name="ppcl"/>
<external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="ppc.dwarf"/>
<external_name tool="qemu" name="qemu-ppc64le"/> <external_name tool="qemu" name="qemu-ppc64le"/>
<external_name tool="qemu_system" name="qemu-system-ppc64le"/>
</language> </language>
<language processor="PowerPC" <language processor="PowerPC"
endian="big" endian="big"

View file

@ -15,6 +15,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/>
<external_name tool="gnu" name="riscv:rv64"/> <external_name tool="gnu" name="riscv:rv64"/>
<external_name tool="qemu" name="qemu-riscv64"/> <external_name tool="qemu" name="qemu-riscv64"/>
<external_name tool="qemu_system" name="qemu-system-riscv64"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -29,6 +30,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/>
<external_name tool="gnu" name="riscv:rv64"/> <external_name tool="gnu" name="riscv:rv64"/>
<external_name tool="qemu" name="qemu-riscv64"/> <external_name tool="qemu" name="qemu-riscv64"/>
<external_name tool="qemu_system" name="qemu-system-riscv64"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -43,6 +45,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/>
<external_name tool="gnu" name="riscv:rv64"/> <external_name tool="gnu" name="riscv:rv64"/>
<external_name tool="qemu" name="qemu-riscv64"/> <external_name tool="qemu" name="qemu-riscv64"/>
<external_name tool="qemu_system" name="qemu-system-riscv64"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -57,6 +60,7 @@
<external_name tool="gnu" name="riscv:rv64"/> <external_name tool="gnu" name="riscv:rv64"/>
<external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/>
<external_name tool="qemu" name="qemu-riscv64"/> <external_name tool="qemu" name="qemu-riscv64"/>
<external_name tool="qemu_system" name="qemu-system-riscv64"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -71,6 +75,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv64.dwarf"/>
<external_name tool="gnu" name="riscv:rv64"/> <external_name tool="gnu" name="riscv:rv64"/>
<external_name tool="qemu" name="qemu-riscv64"/> <external_name tool="qemu" name="qemu-riscv64"/>
<external_name tool="qemu_system" name="qemu-system-riscv64"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -85,6 +90,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -99,6 +105,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -113,6 +120,7 @@
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -127,6 +135,7 @@
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -141,6 +150,7 @@
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
<language processor="RISCV" <language processor="RISCV"
endian="little" endian="little"
@ -155,6 +165,7 @@
<external_name tool="gnu" name="riscv:rv32"/> <external_name tool="gnu" name="riscv:rv32"/>
<external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="riscv32.dwarf"/>
<external_name tool="qemu" name="qemu-riscv32"/> <external_name tool="qemu" name="qemu-riscv32"/>
<external_name tool="qemu_system" name="qemu-system-riscv32"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -15,6 +15,7 @@
<external_name tool="gnu" name="sparc:v9b"/> <external_name tool="gnu" name="sparc:v9b"/>
<external_name tool="IDA-PRO" name="sparcb" /> <external_name tool="IDA-PRO" name="sparcb" />
<external_name tool="qemu" name="qemu-sparc"/> <external_name tool="qemu" name="qemu-sparc"/>
<external_name tool="qemu_system" name="qemu-system-sparc"/>
</language> </language>
<language processor="Sparc" <language processor="Sparc"
endian="big" endian="big"
@ -30,6 +31,7 @@
<external_name tool="gnu" name="sparc:v9b"/> <external_name tool="gnu" name="sparc:v9b"/>
<external_name tool="IDA-PRO" name="sparcb" /> <external_name tool="IDA-PRO" name="sparcb" />
<external_name tool="qemu" name="qemu-sparc64"/> <external_name tool="qemu" name="qemu-sparc64"/>
<external_name tool="qemu_system" name="qemu-system-sparc64"/>
<external_name tool="DWARF.register.mapping.file" name="Sparc.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="Sparc.dwarf"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -15,6 +15,7 @@
<external_name tool="IDA-PRO" name="sh4b"/> <external_name tool="IDA-PRO" name="sh4b"/>
<external_name tool="gnu" name="sh4"/> <external_name tool="gnu" name="sh4"/>
<external_name tool="qemu" name="qemu-sh4eb"/> <external_name tool="qemu" name="qemu-sh4eb"/>
<external_name tool="qemu_system" name="qemu-system-sh4eb"/>
</language> </language>
<language processor="SuperH4" <language processor="SuperH4"
endian="little" endian="little"
@ -31,5 +32,6 @@
<external_name tool="IDA-PRO" name="sh4"/> <external_name tool="IDA-PRO" name="sh4"/>
<external_name tool="gnu" name="sh4"/> <external_name tool="gnu" name="sh4"/>
<external_name tool="qemu" name="qemu-sh4"/> <external_name tool="qemu" name="qemu-sh4"/>
<external_name tool="qemu_system" name="qemu-system-sh4"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -15,6 +15,7 @@
<external_name tool="gnu" name="xtensa"/> <external_name tool="gnu" name="xtensa"/>
<external_name tool="DWARF.register.mapping.file" name="xtensa.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="xtensa.dwarf"/>
<external_name tool="qemu" name="qemu-xtensa"/> <external_name tool="qemu" name="qemu-xtensa"/>
<external_name tool="qemu_system" name="qemu-system-xtensa"/>
</language> </language>
<language processor="Xtensa" <language processor="Xtensa"
endian="big" endian="big"
@ -30,5 +31,6 @@
<external_name tool="gnu" name="xtensa"/> <external_name tool="gnu" name="xtensa"/>
<external_name tool="DWARF.register.mapping.file" name="xtensa.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="xtensa.dwarf"/>
<external_name tool="qemu" name="qemu-xtensaeb"/> <external_name tool="qemu" name="qemu-xtensaeb"/>
<external_name tool="qemu_system" name="qemu-system-xtensaeb"/>
</language> </language>
</language_definitions> </language_definitions>

View file

@ -31,6 +31,7 @@
<external_name tool="DWARF.register.mapping.file" name="x86.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="x86.dwarf"/>
<external_name tool="Golang.register.info.file" name="x86-32-golang.register.info"/> <external_name tool="Golang.register.info.file" name="x86-32-golang.register.info"/>
<external_name tool="qemu" name="qemu-i386"/> <external_name tool="qemu" name="qemu-i386"/>
<external_name tool="qemu_system" name="qemu-system-i386"/>
</language> </language>
<language processor="x86" <language processor="x86"
endian="little" endian="little"
@ -101,6 +102,7 @@
<external_name tool="DWARF.register.mapping.file" name="x86-64.dwarf"/> <external_name tool="DWARF.register.mapping.file" name="x86-64.dwarf"/>
<external_name tool="Golang.register.info.file" name="x86-64-golang.register.info"/> <external_name tool="Golang.register.info.file" name="x86-64-golang.register.info"/>
<external_name tool="qemu" name="qemu-x86_64"/> <external_name tool="qemu" name="qemu-x86_64"/>
<external_name tool="qemu_system" name="qemu-system-x86_64"/>
</language> </language>
<language processor="x86" <language processor="x86"
endian="little" endian="little"