<?xml version="1.1" encoding="UTF-8"?>
<language_definitions>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="v8"
            version="1.108"
            slafile="ARM8_le.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v8">
    <description>Generic ARM/Thumb v8 little endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="Visual Studio" spec="ARM_win.cspec" id="windows"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="armv8-a"/>
    <external_name tool="gnu" name="armv8-r"/>
    <external_name tool="gnu" name="arm_any"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
  <language processor="ARM"
            endian="little"
            size="32"
            variant="v8T"
            version="1.108"
            slafile="ARM8_le.sla"
            processorspec="ARMtTHUMB.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v8T">
    <description>Generic ARM/Thumb v8 little endian (Thumb is default)</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="Visual Studio" spec="ARM_win.cspec" id="windows"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>    
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="arm_any"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
  <language processor="ARM"
            endian="big"
            instructionEndian="little"
            size="32"
            variant="v8LEInstruction"
            version="1.108"
            slafile="ARM8_le.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LEBE:32:v8LEInstruction">
    <description>Generic ARM/Thumb v8 little endian instructions and big endian data</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="Visual Studio" spec="ARM.cspec" id="windows"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
  </language>
  
  <language processor="ARM"
            endian="big"
            size="32"
            variant="v8"
            version="1.108"
            slafile="ARM8_be.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v8">
    <description>Generic ARM/Thumb v8 big endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="armv8-a"/>
    <external_name tool="gnu" name="armv8-r"/>
    <external_name tool="gnu" name="arm_any"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
  <language processor="ARM"
            endian="big"
            size="32"
            variant="v8T"
            version="1.108"
            slafile="ARM8_be.sla"
            processorspec="ARMtTHUMB.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v8T">
    <description>Generic ARM/Thumb v8 big endian (Thumb is default)</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="arm_any"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
  <language processor="ARM"
            endian="little"
            size="32"
            variant="v7"
            version="1.108"
            slafile="ARM7_le.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v7">
    <description>Generic ARM/Thumb v7 little endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="Visual Studio" spec="ARM_win.cspec" id="windows"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="armv7"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            instructionEndian="little"
            size="32"
            variant="v7LEInstruction"
            version="1.108"
            slafile="ARM7_le.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LEBE:32:v7LEInstruction">
    <description>Generic ARM/Thumb v7 little endian instructions and big endian data</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="Visual Studio" spec="ARM.cspec" id="windows"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
  </language>
  
  <language processor="ARM"
            endian="big"
            size="32"
            variant="v7"
            version="1.108"
            slafile="ARM7_be.sla"
            processorspec="ARMt.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v7">
    <description>Generic ARM/Thumb v7 big endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="iwmmxt"/>
    <external_name tool="gnu" name="armv7"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="Cortex"
            version="1.108"
            slafile="ARM7_le.sla"
            processorspec="ARMCortex.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:Cortex">
    <description>ARM Cortex / Thumb little endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv7e-m"/>
    <external_name tool="gnu" name="armv6k"/>
    <external_name tool="gnu" name="armv6kz"/>
    <external_name tool="gnu" name="armv6-m"/>
    <external_name tool="gnu" name="armv6s-m"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="Cortex"
            version="1.108"
            slafile="ARM7_be.sla"
            processorspec="ARMCortex.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:Cortex">
    <description>ARM Cortex / Thumb big endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv6k"/>
    <external_name tool="gnu" name="armv6kz"/>
    <external_name tool="gnu" name="armv6-m"/>
    <external_name tool="gnu" name="armv6s-m"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
  <language processor="ARM"
            endian="little"
            size="32"
            variant="v8-m"
            version="1.108"
            slafile="ARM8m_le.sla"
            processorspec="ARMCortex.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v8-m">
    <description>ARM Cortex v8-m little endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv8-m.base"/>
    <external_name tool="gnu" name="armv8-m.main"/>
    <external_name tool="gnu" name="armv8.1-m.main"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
  </language>
  <language processor="ARM"
            endian="big"
            size="32"
            variant="v8-m"
            version="1.108"
            slafile="ARM8m_be.sla"
            processorspec="ARMCortex.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v8-m">
    <description>ARM Cortex v8-m big endian</description>
    <compiler name="default" spec="ARM.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv8-m.base"/>
    <external_name tool="gnu" name="armv8-m.main"/>
    <external_name tool="gnu" name="armv8.1-m.main"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/>
  </language>
  
  <language processor="ARM"
            endian="little"
            size="32"
            variant="v6"
            version="1.108"
            slafile="ARM6_le.sla"
            processorspec="ARMt_v6.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v6">
    <description>Generic ARM/Thumb v6 little endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="xscale"/>
    <external_name tool="gnu" name="armv6"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled --> 
    <!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> -->
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="v6"
            version="1.108"
            slafile="ARM6_be.sla"
            processorspec="ARMt_v6.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v6">
    <description>Generic ARM/Thumb v6 big endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="xscale"/>
    <external_name tool="gnu" name="armv6"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <!-- change DWARF register mapping to ARMneon.dwarf if VFPv2 is enabled --> 
    <!-- <external_name tool="DWARF.register.mapping.file" name="ARMneon.dwarf"/> -->
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="v5t"
            version="1.108"
            slafile="ARM5t_le.sla"
            processorspec="ARMt_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v5t">
    <description>Generic ARM/Thumb v5 little endian (T-variant)</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv5t"/>
    <external_name tool="gnu" name="armv5tej"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="v5t"
            version="1.108"
            slafile="ARM5t_be.sla"
            processorspec="ARMt_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v5t">
    <description>Generic ARM/Thumb v5 big endian (T-variant)</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv5t"/>
    <external_name tool="gnu" name="armv5tej"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="v5"
            version="1.108"
            slafile="ARM5_le.sla"
            processorspec="ARM_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v5">
    <description>Generic ARM v5 little endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv5"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="v5"
            version="1.108"
            slafile="ARM5_be.sla"
            processorspec="ARM_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v5">
    <description>Generic ARM v5 big endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv5"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="v4t"
            version="1.108"
            slafile="ARM4t_le.sla"
            processorspec="ARMt_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v4t"> 
    <description>Generic ARM/Thumb v4 little endian (T-variant)</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv4t"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="v4t"
            version="1.108"
            slafile="ARM4t_be.sla"
            processorspec="ARMt_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v4t">
    <description>Generic ARM/Thumb v4 big endian (T-variant)</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv4t"/>
    <external_name tool="gdis.disassembler.options.file" name="ARM.gdis"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="little"
            size="32"
            variant="v4"
            version="1.108"
            slafile="ARM4_le.sla"
            processorspec="ARM_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:LE:32:v4">
    <description>Generic ARM v4 little endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv4"/>
    <external_name tool="gnu" name="armv2"/>
    <external_name tool="gnu" name="armv2a"/>
    <external_name tool="gnu" name="armv3"/>
    <external_name tool="gnu" name="armv3m"/>
    <external_name tool="IDA-PRO" name="arm"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-arm"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>

  <language processor="ARM"
            endian="big"
            size="32"
            variant="v4"
            version="1.108"
            slafile="ARM4_be.sla"
            processorspec="ARM_v45.pspec"
            manualindexfile="../manuals/ARM.idx"
            id="ARM:BE:32:v4">
    <description>Generic ARM v4 big endian</description>
    <compiler name="default" spec="ARM_v45.cspec" id="default"/>
    <compiler name="APCS" spec="ARM_apcs.cspec" id="apcs"/>
    <external_name tool="gnu" name="armv4"/>
    <external_name tool="gnu" name="armv2"/>
    <external_name tool="gnu" name="armv2a"/>
    <external_name tool="gnu" name="armv3"/>
    <external_name tool="gnu" name="armv3m"/>
    <external_name tool="IDA-PRO" name="armb"/>
    <external_name tool="DWARF.register.mapping.file" name="ARM.dwarf"/>
    <external_name tool="qemu" name="qemu-armeb"/>
    <external_name tool="qemu_system" name="qemu-system-arm"/>
  </language>
  
</language_definitions>
