Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/gpu/drm/msm/registers/adreno/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 110 kB image not shown  

Quelle  a4xx.xml   Sprache: XML

 
<?xml version="1.0" encoding="UTF-8"?>
<database xmlns="http://nouveau.freedesktop.org/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://gitlab.freedesktop.org/freedreno/ rules-fd.xsd">
<import file="freedreno_copyright.xml"/>
<import file="adreno/adreno_common.xml"/>
<import file="adreno/adreno_pm4.xml"/>

<enum name="a4xx_color_fmt">
 <value name="RB4_A8_UNORM" value="0x01"/>
 <value name="RB4_R8_UNORM" value="0x02"/>
 <value name="RB4_R8_SNORM" value="0x03"/>
 <value name="RB4_R8_UINT" value="0x04"/>
 <value name="RB4_R8_SINT" value="0x05"/>

 <value name="RB4_R4G4B4A4_UNORM" value="0x08"/>
 <value name="RB4_R5G5B5A1_UNORM" value="0x0a"/>
 <value name="RB4_R5G6B5_UNORM" value="0x0e"/>
 <value name="RB4_R8G8_UNORM" value="0x0f"/>
 <value name="RB4_R8G8_SNORM" value="0x10"/>
 <value name="RB4_R8G8_UINT" value="0x11"/>
 <value name="RB4_R8G8_SINT" value="0x12"/>
 <value name="RB4_R16_UNORM" value="0x13"/>
 <value name="RB4_R16_SNORM" value="0x14"/>
 <value name="RB4_R16_FLOAT" value="0x15"/>
 <value name="RB4_R16_UINT" value="0x16"/>
 <value name="RB4_R16_SINT" value="0x17"/>

 <value name="RB4_R8G8B8_UNORM" value="0x19"/>

 <value name="RB4_R8G8B8A8_UNORM" value="0x1a"/>
 <value name="RB4_R8G8B8A8_SNORM" value="0x1c"/>
 <value name="RB4_R8G8B8A8_UINT" value="0x1d"/>
 <value name="RB4_R8G8B8A8_SINT" value="0x1e"/>
 <value name="RB4_R10G10B10A2_UNORM" value="0x1f"/>
 <value name="RB4_R10G10B10A2_UINT" value="0x22"/>
 <value name="RB4_R11G11B10_FLOAT" value="0x27"/>
 <value name="RB4_R16G16_UNORM" value="0x28"/>
 <value name="RB4_R16G16_SNORM" value="0x29"/>
 <value name="RB4_R16G16_FLOAT" value="0x2a"/>
 <value name="RB4_R16G16_UINT" value="0x2b"/>
 <value name="RB4_R16G16_SINT" value="0x2c"/>
 <value name="RB4_R32_FLOAT" value="0x2d"/>
 <value name="RB4_R32_UINT" value="0x2e"/>
 <value name="RB4_R32_SINT" value="0x2f"/>

 <value name="RB4_R16G16B16A16_UNORM" value="0x34"/>
 <value name="RB4_R16G16B16A16_SNORM" value="0x35"/>
 <value name="RB4_R16G16B16A16_FLOAT" value="0x36"/>
 <value name="RB4_R16G16B16A16_UINT" value="0x37"/>
 <value name="RB4_R16G16B16A16_SINT" value="0x38"/>
 <value name="RB4_R32G32_FLOAT" value="0x39"/>
 <value name="RB4_R32G32_UINT" value="0x3a"/>
 <value name="RB4_R32G32_SINT" value="0x3b"/>

 <value name="RB4_R32G32B32A32_FLOAT" value="0x3c"/>
 <value name="RB4_R32G32B32A32_UINT" value="0x3d"/>
 <value name="RB4_R32G32B32A32_SINT" value="0x3e"/>

 <value name="RB4_NONE" value="0xff"/>
</enum>

<enum name="a4xx_tile_mode">
 <value name="TILE4_LINEAR" value="0"/>
 <value name="TILE4_2" value="2"/>
 <value name="TILE4_3" value="3"/>
</enum>

<enum name="a4xx_vtx_fmt" prefix="chipset">
 <!-- hmm, shifted one compared to a3xx?!?  -->
 <value name="VFMT4_32_FLOAT" value="0x1"/>
 <value name="VFMT4_32_32_FLOAT" value="0x2"/>
 <value name="VFMT4_32_32_32_FLOAT" value="0x3"/>
 <value name="VFMT4_32_32_32_32_FLOAT" value="0x4"/>

 <value name="VFMT4_16_FLOAT" value="0x5"/>
 <value name="VFMT4_16_16_FLOAT" value="0x6"/>
 <value name="VFMT4_16_16_16_FLOAT" value="0x7"/>
 <value name="VFMT4_16_16_16_16_FLOAT" value="0x8"/>

 <value name="VFMT4_32_FIXED" value="0x9"/>
 <value name="VFMT4_32_32_FIXED" value="0xa"/>
 <value name="VFMT4_32_32_32_FIXED" value="0xb"/>
 <value name="VFMT4_32_32_32_32_FIXED" value="0xc"/>

 <value name="VFMT4_11_11_10_FLOAT" value="0xd"/>

 <!-- beyond here it does not appear to be shifted -->
 <value name="VFMT4_16_SINT" value="0x10"/>
 <value name="VFMT4_16_16_SINT" value="0x11"/>
 <value name="VFMT4_16_16_16_SINT" value="0x12"/>
 <value name="VFMT4_16_16_16_16_SINT" value="0x13"/>
 <value name="VFMT4_16_UINT" value="0x14"/>
 <value name="VFMT4_16_16_UINT" value="0x15"/>
 <value name="VFMT4_16_16_16_UINT" value="0x16"/>
 <value name="VFMT4_16_16_16_16_UINT" value="0x17"/>
 <value name="VFMT4_16_SNORM" value="0x18"/>
 <value name="VFMT4_16_16_SNORM" value="0x19"/>
 <value name="VFMT4_16_16_16_SNORM" value="0x1a"/>
 <value name="VFMT4_16_16_16_16_SNORM" value="0x1b"/>
 <value name="VFMT4_16_UNORM" value="0x1c"/>
 <value name="VFMT4_16_16_UNORM" value="0x1d"/>
 <value name="VFMT4_16_16_16_UNORM" value="0x1e"/>
 <value name="VFMT4_16_16_16_16_UNORM" value="0x1f"/>

 <value name="VFMT4_32_UINT" value="0x20"/>
 <value name="VFMT4_32_32_UINT" value="0x21"/>
 <value name="VFMT4_32_32_32_UINT" value="0x22"/>
 <value name="VFMT4_32_32_32_32_UINT" value="0x23"/>
 <value name="VFMT4_32_SINT" value="0x24"/>
 <value name="VFMT4_32_32_SINT" value="0x25"/>
 <value name="VFMT4_32_32_32_SINT" value="0x26"/>
 <value name="VFMT4_32_32_32_32_SINT" value="0x27"/>

 <value name="VFMT4_8_UINT" value="0x28"/>
 <value name="VFMT4_8_8_UINT" value="0x29"/>
 <value name="VFMT4_8_8_8_UINT" value="0x2a"/>
 <value name="VFMT4_8_8_8_8_UINT" value="0x2b"/>
 <value name="VFMT4_8_UNORM" value="0x2c"/>
 <value name="VFMT4_8_8_UNORM" value="0x2d"/>
 <value name="VFMT4_8_8_8_UNORM" value="0x2e"/>
 <value name="VFMT4_8_8_8_8_UNORM" value="0x2f"/>
 <value name="VFMT4_8_SINT" value="0x30"/>
 <value name="VFMT4_8_8_SINT" value="0x31"/>
 <value name="VFMT4_8_8_8_SINT" value="0x32"/>
 <value name="VFMT4_8_8_8_8_SINT" value="0x33"/>
 <value name="VFMT4_8_SNORM" value="0x34"/>
 <value name="VFMT4_8_8_SNORM" value="0x35"/>
 <value name="VFMT4_8_8_8_SNORM" value="0x36"/>
 <value name="VFMT4_8_8_8_8_SNORM" value="0x37"/>

 <value name="VFMT4_10_10_10_2_UINT" value="0x38"/>
 <value name="VFMT4_10_10_10_2_UNORM" value="0x39"/>
 <value name="VFMT4_10_10_10_2_SINT" value="0x3a"/>
 <value name="VFMT4_10_10_10_2_SNORM" value="0x3b"/>
 <value name="VFMT4_2_10_10_10_UINT" value="0x3c"/>
 <value name="VFMT4_2_10_10_10_UNORM" value="0x3d"/>
 <value name="VFMT4_2_10_10_10_SINT" value="0x3e"/>
 <value name="VFMT4_2_10_10_10_SNORM" value="0x3f"/>

 <value name="VFMT4_NONE" value="0xff"/>
</enum>

<enum name="a4xx_tex_fmt">
 <!-- 0x00 .. 0x02 -->

 <!-- 8-bit formats -->
 <value name="TFMT4_A8_UNORM" value="0x03"/>
 <value name="TFMT4_8_UNORM"  value="0x04"/>
 <value name="TFMT4_8_SNORM"  value="0x05"/>
 <value name="TFMT4_8_UINT"   value="0x06"/>
 <value name="TFMT4_8_SINT"   value="0x07"/>

 <!-- 16-bit formats -->
 <value name="TFMT4_4_4_4_4_UNORM" value="0x08"/>
 <value name="TFMT4_5_5_5_1_UNORM" value="0x09"/>
 <!-- 0x0a -->
 <value name="TFMT4_5_6_5_UNORM"   value="0x0b"/>

 <!-- 0x0c -->

 <value name="TFMT4_L8_A8_UNORM" value="0x0d"/>
 <value name="TFMT4_8_8_UNORM"   value="0x0e"/>
 <value name="TFMT4_8_8_SNORM"   value="0x0f"/>
 <value name="TFMT4_8_8_UINT"    value="0x10"/>
 <value name="TFMT4_8_8_SINT"    value="0x11"/>

 <value name="TFMT4_16_UNORM" value="0x12"/>
 <value name="TFMT4_16_SNORM" value="0x13"/>
 <value name="TFMT4_16_FLOAT" value="0x14"/>
 <value name="TFMT4_16_UINT"  value="0x15"/>
 <value name="TFMT4_16_SINT"  value="0x16"/>

 <!-- 0x17 .. 0x1b -->

 <!-- 32-bit formats -->
 <value name="TFMT4_8_8_8_8_UNORM" value="0x1c"/>
 <value name="TFMT4_8_8_8_8_SNORM" value="0x1d"/>
 <value name="TFMT4_8_8_8_8_UINT"  value="0x1e"/>
 <value name="TFMT4_8_8_8_8_SINT"  value="0x1f"/>

 <value name="TFMT4_9_9_9_E5_FLOAT"   value="0x20"/>
 <value name="TFMT4_10_10_10_2_UNORM" value="0x21"/>
 <value name="TFMT4_10_10_10_2_UINT"  value="0x22"/>
 <!-- 0x23 .. 0x24 -->
 <value name="TFMT4_11_11_10_FLOAT"   value="0x25"/>

 <value name="TFMT4_16_16_UNORM" value="0x26"/>
 <value name="TFMT4_16_16_SNORM" value="0x27"/>
 <value name="TFMT4_16_16_FLOAT" value="0x28"/>
 <value name="TFMT4_16_16_UINT"  value="0x29"/>
 <value name="TFMT4_16_16_SINT"  value="0x2a"/>

 <value name="TFMT4_32_FLOAT" value="0x2b"/>
 <value name="TFMT4_32_UINT"  value="0x2c"/>
 <value name="TFMT4_32_SINT"  value="0x2d"/>

 <!-- 0x2e .. 0x32 -->

 <!-- 64-bit formats -->
 <value name="TFMT4_16_16_16_16_UNORM" value="0x33"/>
 <value name="TFMT4_16_16_16_16_SNORM" value="0x34"/>
 <value name="TFMT4_16_16_16_16_FLOAT" value="0x35"/>
 <value name="TFMT4_16_16_16_16_UINT"  value="0x36"/>
 <value name="TFMT4_16_16_16_16_SINT"  value="0x37"/>

 <value name="TFMT4_32_32_FLOAT" value="0x38"/>
 <value name="TFMT4_32_32_UINT"  value="0x39"/>
 <value name="TFMT4_32_32_SINT"  value="0x3a"/>

 <!-- 96-bit formats -->
 <value name="TFMT4_32_32_32_FLOAT" value="0x3b"/>
 <value name="TFMT4_32_32_32_UINT"  value="0x3c"/>
 <value name="TFMT4_32_32_32_SINT"  value="0x3d"/>

 <!-- 0x3e -->

 <!-- 128-bit formats -->
 <value name="TFMT4_32_32_32_32_FLOAT" value="0x3f"/>
 <value name="TFMT4_32_32_32_32_UINT"  value="0x40"/>
 <value name="TFMT4_32_32_32_32_SINT"  value="0x41"/>

 <!-- 0x42 .. 0x46 -->
 <value name="TFMT4_X8Z24_UNORM" value="0x47"/>
 <!-- 0x48 .. 0x55 -->

 <!-- compressed formats -->
 <value name="TFMT4_DXT1"                  value="0x56"/>
 <value name="TFMT4_DXT3"                  value="0x57"/>
 <value name="TFMT4_DXT5"                  value="0x58"/>
 <!-- 0x59 -->
 <value name="TFMT4_RGTC1_UNORM"           value="0x5a"/>
 <value name="TFMT4_RGTC1_SNORM"           value="0x5b"/>
 <!-- 0x5c .. 0x5d -->
 <value name="TFMT4_RGTC2_UNORM"           value="0x5e"/>
 <value name="TFMT4_RGTC2_SNORM"           value="0x5f"/>
 <!-- 0x60 -->
 <value name="TFMT4_BPTC_UFLOAT"           value="0x61"/>
 <value name="TFMT4_BPTC_FLOAT"            value="0x62"/>
 <value name="TFMT4_BPTC"                  value="0x63"/>
 <value name="TFMT4_ATC_RGB"               value="0x64"/>
 <value name="TFMT4_ATC_RGBA_EXPLICIT"     value="0x65"/>
 <value name="TFMT4_ATC_RGBA_INTERPOLATED" value="0x66"/>
 <value name="TFMT4_ETC2_RG11_UNORM"       value="0x67"/>
 <value name="TFMT4_ETC2_RG11_SNORM"       value="0x68"/>
 <value name="TFMT4_ETC2_R11_UNORM"        value="0x69"/>
 <value name="TFMT4_ETC2_R11_SNORM"        value="0x6a"/>
 <value name="TFMT4_ETC1"                  value="0x6b"/>
 <value name="TFMT4_ETC2_RGB8"             value="0x6c"/>
 <value name="TFMT4_ETC2_RGBA8"            value="0x6d"/>
 <value name="TFMT4_ETC2_RGB8A1"           value="0x6e"/>
 <value name="TFMT4_ASTC_4x4"              value="0x6f"/>
 <value name="TFMT4_ASTC_5x4"              value="0x70"/>
 <value name="TFMT4_ASTC_5x5"              value="0x71"/>
 <value name="TFMT4_ASTC_6x5"              value="0x72"/>
 <value name="TFMT4_ASTC_6x6"              value="0x73"/>
 <value name="TFMT4_ASTC_8x5"              value="0x74"/>
 <value name="TFMT4_ASTC_8x6"              value="0x75"/>
 <value name="TFMT4_ASTC_8x8"              value="0x76"/>
 <value name="TFMT4_ASTC_10x5"             value="0x77"/>
 <value name="TFMT4_ASTC_10x6"             value="0x78"/>
 <value name="TFMT4_ASTC_10x8"             value="0x79"/>
 <value name="TFMT4_ASTC_10x10"            value="0x7a"/>
 <value name="TFMT4_ASTC_12x10"            value="0x7b"/>
 <value name="TFMT4_ASTC_12x12"            value="0x7c"/>
 <!-- 0x7d .. 0x7f -->

 <value name="TFMT4_NONE"                  value="0xff"/>
</enum>

<enum name="a4xx_depth_format">
 <value name="DEPTH4_NONE" value="0"/>
 <value name="DEPTH4_16" value="1"/>
 <value name="DEPTH4_24_8" value="2"/>
 <value name="DEPTH4_32" value="3"/>
</enum>

<!--
NOTE counters extracted from test-perf log with the following awful
script:
##################
#!/bin/bash

log=$1

grep -F "counter
countable
group" $log | grep -v gl > shortlist.txt

countable=""
IFS=$'\n'; for line in $(cat shortlist.txt); do
# parse ######### group[$n]: $name
l=${line########### group}
if [ $l != $line ];  then
group=`echo $line | awk '{print $3}'`
echo "Group: $group"
continue
fi
# parse #########   counter[$n]: $name
l=${line###########   counter}
if [ $l != $line ]; then
countable=`echo $line | awk '{print $3}'`
#echo "  Countable: $countable"
continue
fi
# parse  countable:
l=${line## countable:}
if [ $l != $line ]; then
val=`echo $line | awk '{print $2}'`
echo "<value value=\"$val\" name=\"$countable\"/>"
fi

done
##################
 -->

<enum name="a4xx_ccu_perfcounter_select">
 <value value="0" name="CCU_BUSY_CYCLES"/>
 <value value="2" name="CCU_RB_DEPTH_RETURN_STALL"/>
 <value value="3" name="CCU_RB_COLOR_RETURN_STALL"/>
 <value value="6" name="CCU_DEPTH_BLOCKS"/>
 <value value="7" name="CCU_COLOR_BLOCKS"/>
 <value value="8" name="CCU_DEPTH_BLOCK_HIT"/>
 <value value="9" name="CCU_COLOR_BLOCK_HIT"/>
 <value value="10" name="CCU_DEPTH_FLAG1_COUNT"/>
 <value value="11" name="CCU_DEPTH_FLAG2_COUNT"/>
 <value value="12" name="CCU_DEPTH_FLAG3_COUNT"/>
 <value value="13" name="CCU_DEPTH_FLAG4_COUNT"/>
 <value value="14" name="CCU_COLOR_FLAG1_COUNT"/>
 <value value="15" name="CCU_COLOR_FLAG2_COUNT"/>
 <value value="16" name="CCU_COLOR_FLAG3_COUNT"/>
 <value value="17" name="CCU_COLOR_FLAG4_COUNT"/>
 <value value="18" name="CCU_PARTIAL_BLOCK_READ"/>
</enum>

<!--
NOTE other than CP_ALWAYS_COUNT (which is the only one we use so far),
on a3xx the countable #'s from AMD_performance_monitor disagreed with
TRM.  All these #'s for a4xx come from AMD_performance_monitor, so
perhaps they should be taken with a grain of salt
-->

<enum name="a4xx_cp_perfcounter_select">
 <!-- first ctr at least seems same as a3xx, so we can measure freq -->
 <value value="0" name="CP_ALWAYS_COUNT"/>
 <value value="1" name="CP_BUSY"/>
 <value value="2" name="CP_PFP_IDLE"/>
 <value value="3" name="CP_PFP_BUSY_WORKING"/>
 <value value="4" name="CP_PFP_STALL_CYCLES_ANY"/>
 <value value="5" name="CP_PFP_STARVE_CYCLES_ANY"/>
 <value value="6" name="CP_PFP_STARVED_PER_LOAD_ADDR"/>
 <value value="7" name="CP_PFP_STALLED_PER_STORE_ADDR"/>
 <value value="8" name="CP_PFP_PC_PROFILE"/>
 <value value="9" name="CP_PFP_MATCH_PM4_PKT_PROFILE"/>
 <value value="10" name="CP_PFP_COND_INDIRECT_DISCARDED"/>
 <value value="11" name="CP_LONG_RESUMPTIONS"/>
 <value value="12" name="CP_RESUME_CYCLES"/>
 <value value="13" name="CP_RESUME_TO_BOUNDARY_CYCLES"/>
 <value value="14" name="CP_LONG_PREEMPTIONS"/>
 <value value="15" name="CP_PREEMPT_CYCLES"/>
 <value value="16" name="CP_PREEMPT_TO_BOUNDARY_CYCLES"/>
 <value value="17" name="CP_ME_FIFO_EMPTY_PFP_IDLE"/>
 <value value="18" name="CP_ME_FIFO_EMPTY_PFP_BUSY"/>
 <value value="19" name="CP_ME_FIFO_NOT_EMPTY_NOT_FULL"/>
 <value value="20" name="CP_ME_FIFO_FULL_ME_BUSY"/>
 <value value="21" name="CP_ME_FIFO_FULL_ME_NON_WORKING"/>
 <value value="22" name="CP_ME_WAITING_FOR_PACKETS"/>
 <value value="23" name="CP_ME_BUSY_WORKING"/>
 <value value="24" name="CP_ME_STARVE_CYCLES_ANY"/>
 <value value="25" name="CP_ME_STARVE_CYCLES_PER_PROFILE"/>
 <value value="26" name="CP_ME_STALL_CYCLES_PER_PROFILE"/>
 <value value="27" name="CP_ME_PC_PROFILE"/>
 <value value="28" name="CP_RCIU_FIFO_EMPTY"/>
 <value value="29" name="CP_RCIU_FIFO_NOT_EMPTY_NOT_FULL"/>
 <value value="30" name="CP_RCIU_FIFO_FULL"/>
 <value value="31" name="CP_RCIU_FIFO_FULL_NO_CONTEXT"/>
 <value value="32" name="CP_RCIU_FIFO_FULL_AHB_MASTER"/>
 <value value="33" name="CP_RCIU_FIFO_FULL_OTHER"/>
 <value value="34" name="CP_AHB_IDLE"/>
 <value value="35" name="CP_AHB_STALL_ON_GRANT_NO_SPLIT"/>
 <value value="36" name="CP_AHB_STALL_ON_GRANT_SPLIT"/>
 <value value="37" name="CP_AHB_STALL_ON_GRANT_SPLIT_PROFILE"/>
 <value value="38" name="CP_AHB_BUSY_WORKING"/>
 <value value="39" name="CP_AHB_BUSY_STALL_ON_HRDY"/>
 <value value="40" name="CP_AHB_BUSY_STALL_ON_HRDY_PROFILE"/>
</enum>

<enum name="a4xx_gras_ras_perfcounter_select">
 <value value="0" name="RAS_SUPER_TILES"/>
 <value value="1" name="RAS_8X8_TILES"/>
 <value value="2" name="RAS_4X4_TILES"/>
 <value value="3" name="RAS_BUSY_CYCLES"/>
 <value value="4" name="RAS_STALL_CYCLES_BY_RB"/>
 <value value="5" name="RAS_STALL_CYCLES_BY_VSC"/>
 <value value="6" name="RAS_STARVE_CYCLES_BY_TSE"/>
 <value value="7" name="RAS_SUPERTILE_CYCLES"/>
 <value value="8" name="RAS_TILE_CYCLES"/>
 <value value="9" name="RAS_FULLY_COVERED_SUPER_TILES"/>
 <value value="10" name="RAS_FULLY_COVERED_8X8_TILES"/>
 <value value="11" name="RAS_4X4_PRIM"/>
 <value value="12" name="RAS_8X4_4X8_PRIM"/>
 <value value="13" name="RAS_8X8_PRIM"/>
</enum>

<enum name="a4xx_gras_tse_perfcounter_select">
 <value value="0" name="TSE_INPUT_PRIM"/>
 <value value="1" name="TSE_INPUT_NULL_PRIM"/>
 <value value="2" name="TSE_TRIVAL_REJ_PRIM"/>
 <value value="3" name="TSE_CLIPPED_PRIM"/>
 <value value="4" name="TSE_NEW_PRIM"/>
 <value value="5" name="TSE_ZERO_AREA_PRIM"/>
 <value value="6" name="TSE_FACENESS_CULLED_PRIM"/>
 <value value="7" name="TSE_ZERO_PIXEL_PRIM"/>
 <value value="8" name="TSE_OUTPUT_NULL_PRIM"/>
 <value value="9" name="TSE_OUTPUT_VISIBLE_PRIM"/>
 <value value="10" name="TSE_PRE_CLIP_PRIM"/>
 <value value="11" name="TSE_POST_CLIP_PRIM"/>
 <value value="12" name="TSE_BUSY_CYCLES"/>
 <value value="13" name="TSE_PC_STARVE"/>
 <value value="14" name="TSE_RAS_STALL"/>
 <value value="15" name="TSE_STALL_BARYPLANE_FIFO_FULL"/>
 <value value="16" name="TSE_STALL_ZPLANE_FIFO_FULL"/>
</enum>

<enum name="a4xx_hlsq_perfcounter_select">
 <value value="0" name="HLSQ_SP_VS_STAGE_CONSTANT"/>
 <value value="1" name="HLSQ_SP_VS_STAGE_INSTRUCTIONS"/>
 <value value="2" name="HLSQ_SP_FS_STAGE_CONSTANT"/>
 <value value="3" name="HLSQ_SP_FS_STAGE_INSTRUCTIONS"/>
 <value value="4" name="HLSQ_TP_STATE"/>
 <value value="5" name="HLSQ_QUADS"/>
 <value value="6" name="HLSQ_PIXELS"/>
 <value value="7" name="HLSQ_VERTICES"/>
 <value value="13" name="HLSQ_SP_VS_STAGE_DATA_BYTES"/>
 <value value="14" name="HLSQ_SP_FS_STAGE_DATA_BYTES"/>
 <value value="15" name="HLSQ_BUSY_CYCLES"/>
 <value value="16" name="HLSQ_STALL_CYCLES_SP_STATE"/>
 <value value="17" name="HLSQ_STALL_CYCLES_SP_VS_STAGE"/>
 <value value="18" name="HLSQ_STALL_CYCLES_SP_FS_STAGE"/>
 <value value="19" name="HLSQ_STALL_CYCLES_UCHE"/>
 <value value="20" name="HLSQ_RBBM_LOAD_CYCLES"/>
 <value value="21" name="HLSQ_DI_TO_VS_START_SP"/>
 <value value="22" name="HLSQ_DI_TO_FS_START_SP"/>
 <value value="23" name="HLSQ_VS_STAGE_START_TO_DONE_SP"/>
 <value value="24" name="HLSQ_FS_STAGE_START_TO_DONE_SP"/>
 <value value="25" name="HLSQ_SP_STATE_COPY_CYCLES_VS_STAGE"/>
 <value value="26" name="HLSQ_SP_STATE_COPY_CYCLES_FS_STAGE"/>
 <value value="27" name="HLSQ_UCHE_LATENCY_CYCLES"/>
 <value value="28" name="HLSQ_UCHE_LATENCY_COUNT"/>
 <value value="29" name="HLSQ_STARVE_CYCLES_VFD"/>
</enum>

<enum name="a4xx_pc_perfcounter_select">
 <value value="0" name="PC_VIS_STREAMS_LOADED"/>
 <value value="2" name="PC_VPC_PRIMITIVES"/>
 <value value="3" name="PC_DEAD_PRIM"/>
 <value value="4" name="PC_LIVE_PRIM"/>
 <value value="5" name="PC_DEAD_DRAWCALLS"/>
 <value value="6" name="PC_LIVE_DRAWCALLS"/>
 <value value="7" name="PC_VERTEX_MISSES"/>
 <value value="9" name="PC_STALL_CYCLES_VFD"/>
 <value value="10" name="PC_STALL_CYCLES_TSE"/>
 <value value="11" name="PC_STALL_CYCLES_UCHE"/>
 <value value="12" name="PC_WORKING_CYCLES"/>
 <value value="13" name="PC_IA_VERTICES"/>
 <value value="14" name="PC_GS_PRIMITIVES"/>
 <value value="15" name="PC_HS_INVOCATIONS"/>
 <value value="16" name="PC_DS_INVOCATIONS"/>
 <value value="17" name="PC_DS_PRIMITIVES"/>
 <value value="20" name="PC_STARVE_CYCLES_FOR_INDEX"/>
 <value value="21" name="PC_STARVE_CYCLES_FOR_TESS_FACTOR"/>
 <value value="22" name="PC_STARVE_CYCLES_FOR_VIZ_STREAM"/>
 <value value="23" name="PC_STALL_CYCLES_TESS"/>
 <value value="24" name="PC_STARVE_CYCLES_FOR_POSITION"/>
 <value value="25" name="PC_MODE0_DRAWCALL"/>
 <value value="26" name="PC_MODE1_DRAWCALL"/>
 <value value="27" name="PC_MODE2_DRAWCALL"/>
 <value value="28" name="PC_MODE3_DRAWCALL"/>
 <value value="29" name="PC_MODE4_DRAWCALL"/>
 <value value="30" name="PC_PREDICATED_DEAD_DRAWCALL"/>
 <value value="31" name="PC_STALL_CYCLES_BY_TSE_ONLY"/>
 <value value="32" name="PC_STALL_CYCLES_BY_VPC_ONLY"/>
 <value value="33" name="PC_VPC_POS_DATA_TRANSACTION"/>
 <value value="34" name="PC_BUSY_CYCLES"/>
 <value value="35" name="PC_STARVE_CYCLES_DI"/>
 <value value="36" name="PC_STALL_CYCLES_VPC"/>
 <value value="37" name="TESS_WORKING_CYCLES"/>
 <value value="38" name="TESS_NUM_CYCLES_SETUP_WORKING"/>
 <value value="39" name="TESS_NUM_CYCLES_PTGEN_WORKING"/>
 <value value="40" name="TESS_NUM_CYCLES_CONNGEN_WORKING"/>
 <value value="41" name="TESS_BUSY_CYCLES"/>
 <value value="42" name="TESS_STARVE_CYCLES_PC"/>
 <value value="43" name="TESS_STALL_CYCLES_PC"/>
</enum>

<enum name="a4xx_pwr_perfcounter_select">
 <!-- NOTE not actually used.. see RBBM_RBBM_CTL.RESET_PWR_CTR0/1 -->
 <value value="0" name="PWR_CORE_CLOCK_CYCLES"/>
 <value value="1" name="PWR_BUSY_CLOCK_CYCLES"/>
</enum>

<enum name="a4xx_rb_perfcounter_select">
 <value value="0" name="RB_BUSY_CYCLES"/>
 <value value="1" name="RB_BUSY_CYCLES_BINNING"/>
 <value value="2" name="RB_BUSY_CYCLES_RENDERING"/>
 <value value="3" name="RB_BUSY_CYCLES_RESOLVE"/>
 <value value="4" name="RB_STARVE_CYCLES_BY_SP"/>
 <value value="5" name="RB_STARVE_CYCLES_BY_RAS"/>
 <value value="6" name="RB_STARVE_CYCLES_BY_MARB"/>
 <value value="7" name="RB_STALL_CYCLES_BY_MARB"/>
 <value value="8" name="RB_STALL_CYCLES_BY_HLSQ"/>
 <value value="9" name="RB_RB_RB_MARB_DATA"/>
 <value value="10" name="RB_SP_RB_QUAD"/>
 <value value="11" name="RB_RAS_RB_Z_QUADS"/>
 <value value="12" name="RB_GMEM_CH0_READ"/>
 <value value="13" name="RB_GMEM_CH1_READ"/>
 <value value="14" name="RB_GMEM_CH0_WRITE"/>
 <value value="15" name="RB_GMEM_CH1_WRITE"/>
 <value value="16" name="RB_CP_CONTEXT_DONE"/>
 <value value="17" name="RB_CP_CACHE_FLUSH"/>
 <value value="18" name="RB_CP_ZPASS_DONE"/>
 <value value="19" name="RB_STALL_FIFO0_FULL"/>
 <value value="20" name="RB_STALL_FIFO1_FULL"/>
 <value value="21" name="RB_STALL_FIFO2_FULL"/>
 <value value="22" name="RB_STALL_FIFO3_FULL"/>
 <value value="23" name="RB_RB_HLSQ_TRANSACTIONS"/>
 <value value="24" name="RB_Z_READ"/>
 <value value="25" name="RB_Z_WRITE"/>
 <value value="26" name="RB_C_READ"/>
 <value value="27" name="RB_C_WRITE"/>
 <value value="28" name="RB_C_READ_LATENCY"/>
 <value value="29" name="RB_Z_READ_LATENCY"/>
 <value value="30" name="RB_STALL_BY_UCHE"/>
 <value value="31" name="RB_MARB_UCHE_TRANSACTIONS"/>
 <value value="32" name="RB_CACHE_STALL_MISS"/>
 <value value="33" name="RB_CACHE_STALL_FIFO_FULL"/>
 <value value="34" name="RB_8BIT_BLENDER_UNITS_ACTIVE"/>
 <value value="35" name="RB_16BIT_BLENDER_UNITS_ACTIVE"/>
 <value value="36" name="RB_SAMPLER_UNITS_ACTIVE"/>
 <value value="38" name="RB_TOTAL_PASS"/>
 <value value="39" name="RB_Z_PASS"/>
 <value value="40" name="RB_Z_FAIL"/>
 <value value="41" name="RB_S_FAIL"/>
 <value value="42" name="RB_POWER0"/>
 <value value="43" name="RB_POWER1"/>
 <value value="44" name="RB_POWER2"/>
 <value value="45" name="RB_POWER3"/>
 <value value="46" name="RB_POWER4"/>
 <value value="47" name="RB_POWER5"/>
 <value value="48" name="RB_POWER6"/>
 <value value="49" name="RB_POWER7"/>
</enum>

<enum name="a4xx_rbbm_perfcounter_select">
 <value value="0" name="RBBM_ALWAYS_ON"/>
 <value value="1" name="RBBM_VBIF_BUSY"/>
 <value value="2" name="RBBM_TSE_BUSY"/>
 <value value="3" name="RBBM_RAS_BUSY"/>
 <value value="4" name="RBBM_PC_DCALL_BUSY"/>
 <value value="5" name="RBBM_PC_VSD_BUSY"/>
 <value value="6" name="RBBM_VFD_BUSY"/>
 <value value="7" name="RBBM_VPC_BUSY"/>
 <value value="8" name="RBBM_UCHE_BUSY"/>
 <value value="9" name="RBBM_VSC_BUSY"/>
 <value value="10" name="RBBM_HLSQ_BUSY"/>
 <value value="11" name="RBBM_ANY_RB_BUSY"/>
 <value value="12" name="RBBM_ANY_TPL1_BUSY"/>
 <value value="13" name="RBBM_ANY_SP_BUSY"/>
 <value value="14" name="RBBM_ANY_MARB_BUSY"/>
 <value value="15" name="RBBM_ANY_ARB_BUSY"/>
 <value value="16" name="RBBM_AHB_STATUS_BUSY"/>
 <value value="17" name="RBBM_AHB_STATUS_STALLED"/>
 <value value="18" name="RBBM_AHB_STATUS_TXFR"/>
 <value value="19" name="RBBM_AHB_STATUS_TXFR_SPLIT"/>
 <value value="20" name="RBBM_AHB_STATUS_TXFR_ERROR"/>
 <value value="21" name="RBBM_AHB_STATUS_LONG_STALL"/>
 <value value="22" name="RBBM_STATUS_MASKED"/>
 <value value="23" name="RBBM_CP_BUSY_GFX_CORE_IDLE"/>
 <value value="24" name="RBBM_TESS_BUSY"/>
 <value value="25" name="RBBM_COM_BUSY"/>
 <value value="32" name="RBBM_DCOM_BUSY"/>
 <value value="33" name="RBBM_ANY_CCU_BUSY"/>
 <value value="34" name="RBBM_DPM_BUSY"/>
</enum>

<enum name="a4xx_sp_perfcounter_select">
 <value value="0" name="SP_LM_LOAD_INSTRUCTIONS"/>
 <value value="1" name="SP_LM_STORE_INSTRUCTIONS"/>
 <value value="2" name="SP_LM_ATOMICS"/>
 <value value="3" name="SP_GM_LOAD_INSTRUCTIONS"/>
 <value value="4" name="SP_GM_STORE_INSTRUCTIONS"/>
 <value value="5" name="SP_GM_ATOMICS"/>
 <value value="6" name="SP_VS_STAGE_TEX_INSTRUCTIONS"/>
 <value value="7" name="SP_VS_STAGE_CFLOW_INSTRUCTIONS"/>
 <value value="8" name="SP_VS_STAGE_EFU_INSTRUCTIONS"/>
 <value value="9" name="SP_VS_STAGE_FULL_ALU_INSTRUCTIONS"/>
 <value value="10" name="SP_VS_STAGE_HALF_ALU_INSTRUCTIONS"/>
 <value value="11" name="SP_FS_STAGE_TEX_INSTRUCTIONS"/>
 <value value="12" name="SP_FS_STAGE_CFLOW_INSTRUCTIONS"/>
 <value value="13" name="SP_FS_STAGE_EFU_INSTRUCTIONS"/>
 <value value="14" name="SP_FS_STAGE_FULL_ALU_INSTRUCTIONS"/>
 <value value="15" name="SP_FS_STAGE_HALF_ALU_INSTRUCTIONS"/>
 <value value="17" name="SP_VS_INSTRUCTIONS"/>
 <value value="18" name="SP_FS_INSTRUCTIONS"/>
 <value value="19" name="SP_ADDR_LOCK_COUNT"/>
 <value value="20" name="SP_UCHE_READ_TRANS"/>
 <value value="21" name="SP_UCHE_WRITE_TRANS"/>
 <value value="22" name="SP_EXPORT_VPC_TRANS"/>
 <value value="23" name="SP_EXPORT_RB_TRANS"/>
 <value value="24" name="SP_PIXELS_KILLED"/>
 <value value="25" name="SP_ICL1_REQUESTS"/>
 <value value="26" name="SP_ICL1_MISSES"/>
 <value value="27" name="SP_ICL0_REQUESTS"/>
 <value value="28" name="SP_ICL0_MISSES"/>
 <value value="29" name="SP_ALU_WORKING_CYCLES"/>
 <value value="30" name="SP_EFU_WORKING_CYCLES"/>
 <value value="31" name="SP_STALL_CYCLES_BY_VPC"/>
 <value value="32" name="SP_STALL_CYCLES_BY_TP"/>
 <value value="33" name="SP_STALL_CYCLES_BY_UCHE"/>
 <value value="34" name="SP_STALL_CYCLES_BY_RB"/>
 <value value="35" name="SP_BUSY_CYCLES"/>
 <value value="36" name="SP_HS_INSTRUCTIONS"/>
 <value value="37" name="SP_DS_INSTRUCTIONS"/>
 <value value="38" name="SP_GS_INSTRUCTIONS"/>
 <value value="39" name="SP_CS_INSTRUCTIONS"/>
 <value value="40" name="SP_SCHEDULER_NON_WORKING"/>
 <value value="41" name="SP_WAVE_CONTEXTS"/>
 <value value="42" name="SP_WAVE_CONTEXT_CYCLES"/>
 <value value="43" name="SP_POWER0"/>
 <value value="44" name="SP_POWER1"/>
 <value value="45" name="SP_POWER2"/>
 <value value="46" name="SP_POWER3"/>
 <value value="47" name="SP_POWER4"/>
 <value value="48" name="SP_POWER5"/>
 <value value="49" name="SP_POWER6"/>
 <value value="50" name="SP_POWER7"/>
 <value value="51" name="SP_POWER8"/>
 <value value="52" name="SP_POWER9"/>
 <value value="53" name="SP_POWER10"/>
 <value value="54" name="SP_POWER11"/>
 <value value="55" name="SP_POWER12"/>
 <value value="56" name="SP_POWER13"/>
 <value value="57" name="SP_POWER14"/>
 <value value="58" name="SP_POWER15"/>
</enum>

<enum name="a4xx_tp_perfcounter_select">
 <value value="0" name="TP_L1_REQUESTS"/>
 <value value="1" name="TP_L1_MISSES"/>
 <value value="8" name="TP_QUADS_OFFSET"/>
 <value value="9" name="TP_QUAD_SHADOW"/>
 <value value="10" name="TP_QUADS_ARRAY"/>
 <value value="11" name="TP_QUADS_GRADIENT"/>
 <value value="12" name="TP_QUADS_1D2D"/>
 <value value="13" name="TP_QUADS_3DCUBE"/>
 <value value="16" name="TP_BUSY_CYCLES"/>
 <value value="17" name="TP_STALL_CYCLES_BY_ARB"/>
 <value value="20" name="TP_STATE_CACHE_REQUESTS"/>
 <value value="21" name="TP_STATE_CACHE_MISSES"/>
 <value value="22" name="TP_POWER0"/>
 <value value="23" name="TP_POWER1"/>
 <value value="24" name="TP_POWER2"/>
 <value value="25" name="TP_POWER3"/>
 <value value="26" name="TP_POWER4"/>
 <value value="27" name="TP_POWER5"/>
 <value value="28" name="TP_POWER6"/>
 <value value="29" name="TP_POWER7"/>
</enum>

<enum name="a4xx_uche_perfcounter_select">
 <value value="0" name="UCHE_VBIF_READ_BEATS_TP"/>
 <value value="1" name="UCHE_VBIF_READ_BEATS_VFD"/>
 <value value="2" name="UCHE_VBIF_READ_BEATS_HLSQ"/>
 <value value="3" name="UCHE_VBIF_READ_BEATS_MARB"/>
 <value value="4" name="UCHE_VBIF_READ_BEATS_SP"/>
 <value value="5" name="UCHE_READ_REQUESTS_TP"/>
 <value value="6" name="UCHE_READ_REQUESTS_VFD"/>
 <value value="7" name="UCHE_READ_REQUESTS_HLSQ"/>
 <value value="8" name="UCHE_READ_REQUESTS_MARB"/>
 <value value="9" name="UCHE_READ_REQUESTS_SP"/>
 <value value="10" name="UCHE_WRITE_REQUESTS_MARB"/>
 <value value="11" name="UCHE_WRITE_REQUESTS_SP"/>
 <value value="12" name="UCHE_TAG_CHECK_FAILS"/>
 <value value="13" name="UCHE_EVICTS"/>
 <value value="14" name="UCHE_FLUSHES"/>
 <value value="15" name="UCHE_VBIF_LATENCY_CYCLES"/>
 <value value="16" name="UCHE_VBIF_LATENCY_SAMPLES"/>
 <value value="17" name="UCHE_BUSY_CYCLES"/>
 <value value="18" name="UCHE_VBIF_READ_BEATS_PC"/>
 <value value="19" name="UCHE_READ_REQUESTS_PC"/>
 <value value="20" name="UCHE_WRITE_REQUESTS_VPC"/>
 <value value="21" name="UCHE_STALL_BY_VBIF"/>
 <value value="22" name="UCHE_WRITE_REQUESTS_VSC"/>
 <value value="23" name="UCHE_POWER0"/>
 <value value="24" name="UCHE_POWER1"/>
 <value value="25" name="UCHE_POWER2"/>
 <value value="26" name="UCHE_POWER3"/>
 <value value="27" name="UCHE_POWER4"/>
 <value value="28" name="UCHE_POWER5"/>
 <value value="29" name="UCHE_POWER6"/>
 <value value="30" name="UCHE_POWER7"/>
</enum>

<enum name="a4xx_vbif_perfcounter_select">
 <value value="0" name="AXI_READ_REQUESTS_ID_0"/>
 <value value="1" name="AXI_READ_REQUESTS_ID_1"/>
 <value value="2" name="AXI_READ_REQUESTS_ID_2"/>
 <value value="3" name="AXI_READ_REQUESTS_ID_3"/>
 <value value="4" name="AXI_READ_REQUESTS_ID_4"/>
 <value value="5" name="AXI_READ_REQUESTS_ID_5"/>
 <value value="6" name="AXI_READ_REQUESTS_ID_6"/>
 <value value="7" name="AXI_READ_REQUESTS_ID_7"/>
 <value value="8" name="AXI_READ_REQUESTS_ID_8"/>
 <value value="9" name="AXI_READ_REQUESTS_ID_9"/>
 <value value="10" name="AXI_READ_REQUESTS_ID_10"/>
 <value value="11" name="AXI_READ_REQUESTS_ID_11"/>
 <value value="12" name="AXI_READ_REQUESTS_ID_12"/>
 <value value="13" name="AXI_READ_REQUESTS_ID_13"/>
 <value value="14" name="AXI_READ_REQUESTS_ID_14"/>
 <value value="15" name="AXI_READ_REQUESTS_ID_15"/>
 <value value="16" name="AXI0_READ_REQUESTS_TOTAL"/>
 <value value="17" name="AXI1_READ_REQUESTS_TOTAL"/>
 <value value="18" name="AXI2_READ_REQUESTS_TOTAL"/>
 <value value="19" name="AXI3_READ_REQUESTS_TOTAL"/>
 <value value="20" name="AXI_READ_REQUESTS_TOTAL"/>
 <value value="21" name="AXI_WRITE_REQUESTS_ID_0"/>
 <value value="22" name="AXI_WRITE_REQUESTS_ID_1"/>
 <value value="23" name="AXI_WRITE_REQUESTS_ID_2"/>
 <value value="24" name="AXI_WRITE_REQUESTS_ID_3"/>
 <value value="25" name="AXI_WRITE_REQUESTS_ID_4"/>
 <value value="26" name="AXI_WRITE_REQUESTS_ID_5"/>
 <value value="27" name="AXI_WRITE_REQUESTS_ID_6"/>
 <value value="28" name="AXI_WRITE_REQUESTS_ID_7"/>
 <value value="29" name="AXI_WRITE_REQUESTS_ID_8"/>
 <value value="30" name="AXI_WRITE_REQUESTS_ID_9"/>
 <value value="31" name="AXI_WRITE_REQUESTS_ID_10"/>
 <value value="32" name="AXI_WRITE_REQUESTS_ID_11"/>
 <value value="33" name="AXI_WRITE_REQUESTS_ID_12"/>
 <value value="34" name="AXI_WRITE_REQUESTS_ID_13"/>
 <value value="35" name="AXI_WRITE_REQUESTS_ID_14"/>
 <value value="36" name="AXI_WRITE_REQUESTS_ID_15"/>
 <value value="37" name="AXI0_WRITE_REQUESTS_TOTAL"/>
 <value value="38" name="AXI1_WRITE_REQUESTS_TOTAL"/>
 <value value="39" name="AXI2_WRITE_REQUESTS_TOTAL"/>
 <value value="40" name="AXI3_WRITE_REQUESTS_TOTAL"/>
 <value value="41" name="AXI_WRITE_REQUESTS_TOTAL"/>
 <value value="42" name="AXI_TOTAL_REQUESTS"/>
 <value value="43" name="AXI_READ_DATA_BEATS_ID_0"/>
 <value value="44" name="AXI_READ_DATA_BEATS_ID_1"/>
 <value value="45" name="AXI_READ_DATA_BEATS_ID_2"/>
 <value value="46" name="AXI_READ_DATA_BEATS_ID_3"/>
 <value value="47" name="AXI_READ_DATA_BEATS_ID_4"/>
 <value value="48" name="AXI_READ_DATA_BEATS_ID_5"/>
 <value value="49" name="AXI_READ_DATA_BEATS_ID_6"/>
 <value value="50" name="AXI_READ_DATA_BEATS_ID_7"/>
 <value value="51" name="AXI_READ_DATA_BEATS_ID_8"/>
 <value value="52" name="AXI_READ_DATA_BEATS_ID_9"/>
 <value value="53" name="AXI_READ_DATA_BEATS_ID_10"/>
 <value value="54" name="AXI_READ_DATA_BEATS_ID_11"/>
 <value value="55" name="AXI_READ_DATA_BEATS_ID_12"/>
 <value value="56" name="AXI_READ_DATA_BEATS_ID_13"/>
 <value value="57" name="AXI_READ_DATA_BEATS_ID_14"/>
 <value value="58" name="AXI_READ_DATA_BEATS_ID_15"/>
 <value value="59" name="AXI0_READ_DATA_BEATS_TOTAL"/>
 <value value="60" name="AXI1_READ_DATA_BEATS_TOTAL"/>
 <value value="61" name="AXI2_READ_DATA_BEATS_TOTAL"/>
 <value value="62" name="AXI3_READ_DATA_BEATS_TOTAL"/>
 <value value="63" name="AXI_READ_DATA_BEATS_TOTAL"/>
 <value value="64" name="AXI_WRITE_DATA_BEATS_ID_0"/>
 <value value="65" name="AXI_WRITE_DATA_BEATS_ID_1"/>
 <value value="66" name="AXI_WRITE_DATA_BEATS_ID_2"/>
 <value value="67" name="AXI_WRITE_DATA_BEATS_ID_3"/>
 <value value="68" name="AXI_WRITE_DATA_BEATS_ID_4"/>
 <value value="69" name="AXI_WRITE_DATA_BEATS_ID_5"/>
 <value value="70" name="AXI_WRITE_DATA_BEATS_ID_6"/>
 <value value="71" name="AXI_WRITE_DATA_BEATS_ID_7"/>
 <value value="72" name="AXI_WRITE_DATA_BEATS_ID_8"/>
 <value value="73" name="AXI_WRITE_DATA_BEATS_ID_9"/>
 <value value="74" name="AXI_WRITE_DATA_BEATS_ID_10"/>
 <value value="75" name="AXI_WRITE_DATA_BEATS_ID_11"/>
 <value value="76" name="AXI_WRITE_DATA_BEATS_ID_12"/>
 <value value="77" name="AXI_WRITE_DATA_BEATS_ID_13"/>
 <value value="78" name="AXI_WRITE_DATA_BEATS_ID_14"/>
 <value value="79" name="AXI_WRITE_DATA_BEATS_ID_15"/>
 <value value="80" name="AXI0_WRITE_DATA_BEATS_TOTAL"/>
 <value value="81" name="AXI1_WRITE_DATA_BEATS_TOTAL"/>
 <value value="82" name="AXI2_WRITE_DATA_BEATS_TOTAL"/>
 <value value="83" name="AXI3_WRITE_DATA_BEATS_TOTAL"/>
 <value value="84" name="AXI_WRITE_DATA_BEATS_TOTAL"/>
 <value value="85" name="AXI_DATA_BEATS_TOTAL"/>
 <value value="86" name="CYCLES_HELD_OFF_ID_0"/>
 <value value="87" name="CYCLES_HELD_OFF_ID_1"/>
 <value value="88" name="CYCLES_HELD_OFF_ID_2"/>
 <value value="89" name="CYCLES_HELD_OFF_ID_3"/>
 <value value="90" name="CYCLES_HELD_OFF_ID_4"/>
 <value value="91" name="CYCLES_HELD_OFF_ID_5"/>
 <value value="92" name="CYCLES_HELD_OFF_ID_6"/>
 <value value="93" name="CYCLES_HELD_OFF_ID_7"/>
 <value value="94" name="CYCLES_HELD_OFF_ID_8"/>
 <value value="95" name="CYCLES_HELD_OFF_ID_9"/>
 <value value="96" name="CYCLES_HELD_OFF_ID_10"/>
 <value value="97" name="CYCLES_HELD_OFF_ID_11"/>
 <value value="98" name="CYCLES_HELD_OFF_ID_12"/>
 <value value="99" name="CYCLES_HELD_OFF_ID_13"/>
 <value value="100" name="CYCLES_HELD_OFF_ID_14"/>
 <value value="101" name="CYCLES_HELD_OFF_ID_15"/>
 <value value="102" name="AXI_READ_REQUEST_HELD_OFF"/>
 <value value="103" name="AXI_WRITE_REQUEST_HELD_OFF"/>
 <value value="104" name="AXI_REQUEST_HELD_OFF"/>
 <value value="105" name="AXI_WRITE_DATA_HELD_OFF"/>
 <value value="106" name="OCMEM_AXI_READ_REQUEST_HELD_OFF"/>
 <value value="107" name="OCMEM_AXI_WRITE_REQUEST_HELD_OFF"/>
 <value value="108" name="OCMEM_AXI_REQUEST_HELD_OFF"/>
 <value value="109" name="OCMEM_AXI_WRITE_DATA_HELD_OFF"/>
 <value value="110" name="ELAPSED_CYCLES_DDR"/>
 <value value="111" name="ELAPSED_CYCLES_OCMEM"/>
</enum>

<enum name="a4xx_vfd_perfcounter_select">
 <value value="0" name="VFD_UCHE_BYTE_FETCHED"/>
 <value value="1" name="VFD_UCHE_TRANS"/>
 <value value="3" name="VFD_FETCH_INSTRUCTIONS"/>
 <value value="5" name="VFD_BUSY_CYCLES"/>
 <value value="6" name="VFD_STALL_CYCLES_UCHE"/>
 <value value="7" name="VFD_STALL_CYCLES_HLSQ"/>
 <value value="8" name="VFD_STALL_CYCLES_VPC_BYPASS"/>
 <value value="9" name="VFD_STALL_CYCLES_VPC_ALLOC"/>
 <value value="13" name="VFD_MODE_0_FIBERS"/>
 <value value="14" name="VFD_MODE_1_FIBERS"/>
 <value value="15" name="VFD_MODE_2_FIBERS"/>
 <value value="16" name="VFD_MODE_3_FIBERS"/>
 <value value="17" name="VFD_MODE_4_FIBERS"/>
 <value value="18" name="VFD_BFIFO_STALL"/>
 <value value="19" name="VFD_NUM_VERTICES_TOTAL"/>
 <value value="20" name="VFD_PACKER_FULL"/>
 <value value="21" name="VFD_UCHE_REQUEST_FIFO_FULL"/>
 <value value="22" name="VFD_STARVE_CYCLES_PC"/>
 <value value="23" name="VFD_STARVE_CYCLES_UCHE"/>
</enum>

<enum name="a4xx_vpc_perfcounter_select">
 <value value="2" name="VPC_SP_LM_COMPONENTS"/>
 <value value="3" name="VPC_SP0_LM_BYTES"/>
 <value value="4" name="VPC_SP1_LM_BYTES"/>
 <value value="5" name="VPC_SP2_LM_BYTES"/>
 <value value="6" name="VPC_SP3_LM_BYTES"/>
 <value value="7" name="VPC_WORKING_CYCLES"/>
 <value value="8" name="VPC_STALL_CYCLES_LM"/>
 <value value="9" name="VPC_STARVE_CYCLES_RAS"/>
 <value value="10" name="VPC_STREAMOUT_CYCLES"/>
 <value value="12" name="VPC_UCHE_TRANSACTIONS"/>
 <value value="13" name="VPC_STALL_CYCLES_UCHE"/>
 <value value="14" name="VPC_BUSY_CYCLES"/>
 <value value="15" name="VPC_STARVE_CYCLES_SP"/>
</enum>

<enum name="a4xx_vsc_perfcounter_select">
 <value value="0" name="VSC_BUSY_CYCLES"/>
 <value value="1" name="VSC_WORKING_CYCLES"/>
 <value value="2" name="VSC_STALL_CYCLES_UCHE"/>
 <value value="3" name="VSC_STARVE_CYCLES_RAS"/>
 <value value="4" name="VSC_EOT_NUM"/>
</enum>

<domain name="A4XX" width="32">
 <!-- RB registers -->
 <reg32 offset="0x0cc0" name="RB_GMEM_BASE_ADDR"/>
 <reg32 offset="0x0cc7" name="RB_PERFCTR_RB_SEL_0" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0cc8" name="RB_PERFCTR_RB_SEL_1" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0cc9" name="RB_PERFCTR_RB_SEL_2" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0cca" name="RB_PERFCTR_RB_SEL_3" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0ccb" name="RB_PERFCTR_RB_SEL_4" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0ccc" name="RB_PERFCTR_RB_SEL_5" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0ccd" name="RB_PERFCTR_RB_SEL_6" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0cce" name="RB_PERFCTR_RB_SEL_7" type="a4xx_rb_perfcounter_select"/>
 <reg32 offset="0x0ccf" name="RB_PERFCTR_CCU_SEL_0" type="a4xx_ccu_perfcounter_select"/>
 <reg32 offset="0x0cd0" name="RB_PERFCTR_CCU_SEL_1" type="a4xx_ccu_perfcounter_select"/>
 <reg32 offset="0x0cd1" name="RB_PERFCTR_CCU_SEL_2" type="a4xx_ccu_perfcounter_select"/>
 <reg32 offset="0x0cd2" name="RB_PERFCTR_CCU_SEL_3" type="a4xx_ccu_perfcounter_select"/>
 <reg32 offset="0x0ce0" name="RB_FRAME_BUFFER_DIMENSION">
  <bitfield name="WIDTH" low="0" high="13" type="uint"/>
  <bitfield name="HEIGHT" low="16" high="29" type="uint"/>
 </reg32>
 <reg32 offset="0x20cc" name="RB_CLEAR_COLOR_DW0"/>
 <reg32 offset="0x20cd" name="RB_CLEAR_COLOR_DW1"/>
 <reg32 offset="0x20ce" name="RB_CLEAR_COLOR_DW2"/>
 <reg32 offset="0x20cf" name="RB_CLEAR_COLOR_DW3"/>
 <reg32 offset="0x20a0" name="RB_MODE_CONTROL">
  <!--
for non-bypass mode, these are bin width/height..  although
possibly bigger bitfields to hold entire width/height for
gmem-bypass??  Either way, it appears to need to be multiple
of 32..
-->

  <bitfield name="WIDTH" low="0" high="5" shr="5" type="uint"/>
  <bitfield name="HEIGHT" low="8" high="13" shr="5" type="uint"/>
  <bitfield name="ENABLE_GMEM" pos="16" type="boolean"/>
 </reg32>
 <reg32 offset="0x20a1" name="RB_RENDER_CONTROL">
  <bitfield name="BINNING_PASS" pos="0" type="boolean"/>
  <!-- nearly everything has bit3 set.. -->
  <!-- bit5 set on resolve and tiling pass -->
  <bitfield name="DISABLE_COLOR_PIPE" pos="5" type="boolean"/>
 </reg32>
 <reg32 offset="0x20a2" name="RB_MSAA_CONTROL">
  <bitfield name="DISABLE" pos="12" type="boolean"/>
  <bitfield name="SAMPLES" low="13" high="15" type="uint"/>
 </reg32>
 <reg32 offset="0x20a3" name="RB_RENDER_CONTROL2">
  <bitfield name="COORD_MASK" low="0" high="3" type="hex"/>
  <bitfield name="SAMPLEMASK" pos="4" type="boolean"/>
  <bitfield name="FACENESS" pos="5" type="boolean"/>
  <bitfield name="SAMPLEID" pos="6" type="boolean"/>
  <bitfield name="MSAA_SAMPLES" low="7" high="9" type="uint"/>
  <bitfield name="SAMPLEID_HR" pos="11" type="boolean"/>
  <bitfield name="IJ_PERSP_PIXEL" pos="12" type="boolean"/>
  <!-- the 2 below are just educated guesses -->
  <bitfield name="IJ_PERSP_CENTROID" pos="13" type="boolean"/>
  <bitfield name="IJ_PERSP_SAMPLE" pos="14" type="boolean"/>
  <!-- needs to be enabled to get nopersp values,
     perhaps other cases too? -->

  <bitfield name="SIZE" pos="15" type="boolean"/>
 </reg32>
 <array offset="0x20a4" name="RB_MRT" stride="5" length="8">
  <reg32 offset="0x0" name="CONTROL">
   <bitfield name="READ_DEST_ENABLE" pos="3" type="boolean"/>
   <!-- both these bits seem to get set when enabling GL_BLEND.. -->
   <bitfield name="BLEND" pos="4" type="boolean"/>
   <bitfield name="BLEND2" pos="5" type="boolean"/>
   <bitfield name="ROP_ENABLE" pos="6" type="boolean"/>
   <bitfield name="ROP_CODE" low="8" high="11" type="a3xx_rop_code"/>
   <bitfield name="COMPONENT_ENABLE" low="24" high="27" type="hex"/>
  </reg32>
  <reg32 offset="0x1" name="BUF_INFO">
   <bitfield name="COLOR_FORMAT" low="0" high="5" type="a4xx_color_fmt"/>
   <!--
    guestimate position of COLOR_TILE_MODE..  this works out if
    common value is 2, like on a3xx..
 -->

   <bitfield name="COLOR_TILE_MODE" low="6" high="7" type="a4xx_tile_mode"/>
   <bitfield name="DITHER_MODE" low="9" high="10" type="adreno_rb_dither_mode"/>
   <bitfield name="COLOR_SWAP" low="11" high="12" type="a3xx_color_swap"/>
   <bitfield name="COLOR_SRGB" pos="13" type="boolean"/>
   <!-- note: possibly some # of lsb's aren't there: -->
   <doc>
    Pitch (actually, appears to be pitch in bytes, so really is a stride)
    in GMEM, so pitch of the current tile.
   </doc>
   <bitfield name="COLOR_BUF_PITCH" low="14" high="31" shr="4" type="uint"/>
  </reg32>
  <reg32 offset="0x2" name="BASE"/>
  <reg32 offset="0x3" name="CONTROL3">
   <!-- probably missing some lsb's.. and guessing upper size -->
   <!-- pitch * cpp * msaa: -->
   <bitfield name="STRIDE" low="3" high="25" type="uint"/>
  </reg32>
  <reg32 offset="0x4" name="BLEND_CONTROL">
   <bitfield name="RGB_SRC_FACTOR" low="0" high="4" type="adreno_rb_blend_factor"/>
   <bitfield name="RGB_BLEND_OPCODE" low="5" high="7" type="a3xx_rb_blend_opcode"/>
   <bitfield name="RGB_DEST_FACTOR" low="8" high="12" type="adreno_rb_blend_factor"/>
   <bitfield name="ALPHA_SRC_FACTOR" low="16" high="20" type="adreno_rb_blend_factor"/>
   <bitfield name="ALPHA_BLEND_OPCODE" low="21" high="23" type="a3xx_rb_blend_opcode"/>
   <bitfield name="ALPHA_DEST_FACTOR" low="24" high="28" type="adreno_rb_blend_factor"/>
  </reg32>
 </array>

 <reg32 offset="0x20f0" name="RB_BLEND_RED">
  <bitfield name="UINT" low="0" high="7" type="hex"/>
  <bitfield name="SINT" low="8" high="15" type="hex"/>
  <bitfield name="FLOAT" low="16" high="31" type="float"/>
 </reg32>
 <reg32 offset="0x20f1" name="RB_BLEND_RED_F32" type="float"/>

 <reg32 offset="0x20f2" name="RB_BLEND_GREEN">
  <bitfield name="UINT" low="0" high="7" type="hex"/>
  <bitfield name="SINT" low="8" high="15" type="hex"/>
  <bitfield name="FLOAT" low="16" high="31" type="float"/>
 </reg32>
 <reg32 offset="0x20f3" name="RB_BLEND_GREEN_F32" type="float"/>

 <reg32 offset="0x20f4" name="RB_BLEND_BLUE">
  <bitfield name="UINT" low="0" high="7" type="hex"/>
  <bitfield name="SINT" low="8" high="15" type="hex"/>
  <bitfield name="FLOAT" low="16" high="31" type="float"/>
 </reg32>
 <reg32 offset="0x20f5" name="RB_BLEND_BLUE_F32" type="float"/>

 <reg32 offset="0x20f6" name="RB_BLEND_ALPHA">
  <bitfield name="UINT" low="0" high="7" type="hex"/>
  <bitfield name="SINT" low="8" high="15" type="hex"/>
  <bitfield name="FLOAT" low="16" high="31" type="float"/>
 </reg32>
 <reg32 offset="0x20f7" name="RB_BLEND_ALPHA_F32" type="float"/>

 <reg32 offset="0x20f8" name="RB_ALPHA_CONTROL">
  <bitfield name="ALPHA_REF" low="0" high="7" type="hex"/>
  <bitfield name="ALPHA_TEST" pos="8" type="boolean"/>
  <bitfield name="ALPHA_TEST_FUNC" low="9" high="11" type="adreno_compare_func"/>
 </reg32>
 <reg32 offset="0x20f9" name="RB_FS_OUTPUT">
  <!-- per-mrt enable bit -->
  <bitfield name="ENABLE_BLEND" low="0" high="7"/>
  <bitfield name="INDEPENDENT_BLEND" pos="8" type="boolean"/>
  <!-- a guess? -->
  <bitfield name="SAMPLE_MASK" low="16" high="31"/>
 </reg32>
 <reg32 offset="0x20fa" name="RB_SAMPLE_COUNT_CONTROL">
  <bitfield name="COPY" pos="1" type="boolean"/>
  <bitfield name="ADDR" low="2" high="31" shr="2"/>
 </reg32>
 <!-- always 00000000 for binning pass, else 0000000f: -->
 <reg32 offset="0x20fb" name="RB_RENDER_COMPONENTS">
  <bitfield name="RT0" low="0" high="3"/>
  <bitfield name="RT1" low="4" high="7"/>
  <bitfield name="RT2" low="8" high="11"/>
  <bitfield name="RT3" low="12" high="15"/>
  <bitfield name="RT4" low="16" high="19"/>
  <bitfield name="RT5" low="20" high="23"/>
  <bitfield name="RT6" low="24" high="27"/>
  <bitfield name="RT7" low="28" high="31"/>
 </reg32>

 <reg32 offset="0x20fc" name="RB_COPY_CONTROL">
  <!-- not sure # of bits -->
  <bitfield name="MSAA_RESOLVE" low="0" high="1" type="a3xx_msaa_samples"/>
  <bitfield name="MODE" low="4" high="6" type="adreno_rb_copy_control_mode"/>
  <bitfield name="FASTCLEAR" low="8" high="11" type="hex"/>
  <bitfield name="GMEM_BASE" low="14" high="31" shr="14" type="hex"/>
 </reg32>
 <reg32 offset="0x20fd" name="RB_COPY_DEST_BASE">
  <bitfield name="BASE" low="5" high="31" shr="5" type="hex"/>
 </reg32>
 <reg32 offset="0x20fe" name="RB_COPY_DEST_PITCH">
  <doc>actually, appears to be pitch in bytes, so really is a stride</doc>
  <!-- not actually sure about max pitch... -->
  <bitfield name="PITCH" low="0" high="31" shr="5" type="uint"/>
 </reg32>
 <reg32 offset="0x20ff" name="RB_COPY_DEST_INFO">
  <bitfield name="FORMAT" low="2" high="7" type="a4xx_color_fmt"/>
  <bitfield name="SWAP" low="8" high="9" type="a3xx_color_swap"/>
  <bitfield name="DITHER_MODE" low="10" high="11" type="adreno_rb_dither_mode"/>
  <bitfield name="COMPONENT_ENABLE" low="14" high="17" type="hex"/>
  <bitfield name="ENDIAN" low="18" high="20" type="adreno_rb_surface_endian"/>
  <bitfield name="TILE" low="24" high="25" type="a4xx_tile_mode"/>
 </reg32>
 <reg32 offset="0x2100" name="RB_FS_OUTPUT_REG">
  <!-- bit0 set except for binning pass.. -->
  <bitfield name="MRT" low="0" high="3" type="uint"/>
  <bitfield name="FRAG_WRITES_Z" pos="5" type="boolean"/>
 </reg32>
 <reg32 offset="0x2101" name="RB_DEPTH_CONTROL">
  <!--
guessing that this matches a2xx with the stencil fields
moved out into RB_STENCIL_CONTROL?
 -->

  <bitfield name="FRAG_WRITES_Z" pos="0" type="boolean"/>
  <bitfield name="Z_TEST_ENABLE" pos="1" type="boolean"/>
  <bitfield name="Z_WRITE_ENABLE" pos="2" type="boolean"/>
  <bitfield name="ZFUNC" low="4" high="6" type="adreno_compare_func"/>
  <bitfield name="Z_CLAMP_ENABLE" pos="7" type="boolean"/>
  <bitfield name="EARLY_Z_DISABLE" pos="16" type="boolean"/>
  <bitfield name="FORCE_FRAGZ_TO_FS" pos="17" type="boolean"/>
  <doc>Z_READ_ENABLE bit is set for zfunc other than GL_ALWAYS or GL_NEVER</doc>
  <bitfield name="Z_READ_ENABLE" pos="31" type="boolean"/>
 </reg32>
 <reg32 offset="0x2102" name="RB_DEPTH_CLEAR"/>
 <reg32 offset="0x2103" name="RB_DEPTH_INFO">
  <bitfield name="DEPTH_FORMAT" low="0" high="1" type="a4xx_depth_format"/>
  <doc>
   DEPTH_BASE is offset in GMEM to depth/stencil buffer, ie
   bin_w * bin_h / 1024 (possible rounded up to multiple of
   something??  ie. 39 becomes 40, 78 becomes 80.. 75 becomes
   80.. so maybe it needs to be multiple of 8??
  </doc>
  <bitfield name="DEPTH_BASE" low="12" high="31" shr="12" type="hex"/>
 </reg32>
 <reg32 offset="0x2104" name="RB_DEPTH_PITCH" shr="5" type="uint">
  <doc>stride of depth/stencil buffer</doc>
 </reg32>
 <reg32 offset="0x2105" name="RB_DEPTH_PITCH2" shr="5" type="uint">
  <doc>???</doc>
 </reg32>
 <reg32 offset="0x2106" name="RB_STENCIL_CONTROL">
  <bitfield name="STENCIL_ENABLE" pos="0" type="boolean"/>
  <bitfield name="STENCIL_ENABLE_BF" pos="1" type="boolean"/>
  <!--
set for stencil operations that require read from stencil
buffer, but not for example for stencil clear (which does
not require read).. so guessing this is analogous to
READ_DEST_ENABLE for color buffer..
 -->

  <bitfield name="STENCIL_READ" pos="2" type="boolean"/>
  <bitfield name="FUNC" low="8" high="10" type="adreno_compare_func"/>
  <bitfield name="FAIL" low="11" high="13" type="adreno_stencil_op"/>
  <bitfield name="ZPASS" low="14" high="16" type="adreno_stencil_op"/>
  <bitfield name="ZFAIL" low="17" high="19" type="adreno_stencil_op"/>
  <bitfield name="FUNC_BF" low="20" high="22" type="adreno_compare_func"/>
  <bitfield name="FAIL_BF" low="23" high="25" type="adreno_stencil_op"/>
  <bitfield name="ZPASS_BF" low="26" high="28" type="adreno_stencil_op"/>
  <bitfield name="ZFAIL_BF" low="29" high="31" type="adreno_stencil_op"/>
 </reg32>
 <reg32 offset="0x2107" name="RB_STENCIL_CONTROL2">
  <!--
This seems to be set by blob if there is a stencil buffer
at all in GMEM, regardless of whether it is enabled for
a particular draw (ie. RB_STENCIL_CONTROL).  Not really
sure if that is required or just a quirk of the blob
-->

  <bitfield name="STENCIL_BUFFER" pos="0" type="boolean"/>
 </reg32>
 <reg32 offset="0x2108" name="RB_STENCIL_INFO">
  <bitfield name="SEPARATE_STENCIL" pos="0" type="boolean"/>
  <doc>Base address for stencil when not using interleaved depth/stencil</doc>
  <bitfield name="STENCIL_BASE" low="12" high="31" shr="12" type="hex"/>
 </reg32>
 <reg32 offset="0x2109" name="RB_STENCIL_PITCH" shr="5" type="uint">
  <doc>pitch of stencil buffer when not using interleaved depth/stencil</doc>
 </reg32>

 <reg32 offset="0x210b" name="RB_STENCILREFMASK" type="adreno_rb_stencilrefmask"/>
 <reg32 offset="0x210c" name="RB_STENCILREFMASK_BF" type="adreno_rb_stencilrefmask"/>
 <reg32 offset="0x210d" name="RB_BIN_OFFSET" type="adreno_reg_xy"/>
 <array offset="0x2120" name="RB_VPORT_Z_CLAMP" stride="2" length="16">
  <reg32 offset="0x0" name="MIN"/>
  <reg32 offset="0x1" name="MAX"/>
 </array>

 <!-- RBBM registers -->
 <reg32 offset="0x0000" name="RBBM_HW_VERSION"/>
 <reg32 offset="0x0002" name="RBBM_HW_CONFIGURATION"/>
 <array offset="0x4" name="RBBM_CLOCK_CTL_TP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x8" name="RBBM_CLOCK_CTL2_TP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0xc" name="RBBM_CLOCK_HYST_TP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x10" name="RBBM_CLOCK_DELAY_TP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <reg32 offset="0x0014" name="RBBM_CLOCK_CTL_UCHE "/>
 <reg32 offset="0x0015" name="RBBM_CLOCK_CTL2_UCHE"/>
 <reg32 offset="0x0016" name="RBBM_CLOCK_CTL3_UCHE"/>
 <reg32 offset="0x0017" name="RBBM_CLOCK_CTL4_UCHE"/>
 <reg32 offset="0x0018" name="RBBM_CLOCK_HYST_UCHE"/>
 <reg32 offset="0x0019" name="RBBM_CLOCK_DELAY_UCHE"/>
 <reg32 offset="0x001a" name="RBBM_CLOCK_MODE_GPC"/>
 <reg32 offset="0x001b" name="RBBM_CLOCK_DELAY_GPC"/>
 <reg32 offset="0x001c" name="RBBM_CLOCK_HYST_GPC"/>
 <reg32 offset="0x001d" name="RBBM_CLOCK_CTL_TSE_RAS_RBBM"/>
 <reg32 offset="0x001e" name="RBBM_CLOCK_HYST_TSE_RAS_RBBM"/>
 <reg32 offset="0x001f" name="RBBM_CLOCK_DELAY_TSE_RAS_RBBM"/>
 <reg32 offset="0x0020" name="RBBM_CLOCK_CTL"/>
 <reg32 offset="0x0021" name="RBBM_SP_HYST_CNT"/>
 <reg32 offset="0x0022" name="RBBM_SW_RESET_CMD"/>
 <reg32 offset="0x0023" name="RBBM_AHB_CTL0"/>
 <reg32 offset="0x0024" name="RBBM_AHB_CTL1"/>
 <reg32 offset="0x0025" name="RBBM_AHB_CMD"/>
 <reg32 offset="0x0026" name="RBBM_RB_SUB_BLOCK_SEL_CTL"/>
 <reg32 offset="0x0028" name="RBBM_RAM_ACC_63_32"/>
 <reg32 offset="0x002b" name="RBBM_WAIT_IDLE_CLOCKS_CTL"/>
 <reg32 offset="0x002f" name="RBBM_INTERFACE_HANG_INT_CTL"/>
 <reg32 offset="0x0034" name="RBBM_INTERFACE_HANG_MASK_CTL4"/>
 <reg32 offset="0x0036" name="RBBM_INT_CLEAR_CMD"/>
 <reg32 offset="0x0037" name="RBBM_INT_0_MASK"/>
 <reg32 offset="0x003e" name="RBBM_RBBM_CTL"/>
 <reg32 offset="0x003f" name="RBBM_AHB_DEBUG_CTL"/>
 <reg32 offset="0x0041" name="RBBM_VBIF_DEBUG_CTL"/>
 <reg32 offset="0x0042" name="RBBM_CLOCK_CTL2"/>
 <reg32 offset="0x0045" name="RBBM_BLOCK_SW_RESET_CMD"/>
 <reg32 offset="0x0047" name="RBBM_RESET_CYCLES"/>
 <reg32 offset="0x0049" name="RBBM_EXT_TRACE_BUS_CTL"/>
 <reg32 offset="0x004a" name="RBBM_CFG_DEBBUS_SEL_A"/>
 <reg32 offset="0x004b" name="RBBM_CFG_DEBBUS_SEL_B"/>
 <reg32 offset="0x004c" name="RBBM_CFG_DEBBUS_SEL_C"/>
 <reg32 offset="0x004d" name="RBBM_CFG_DEBBUS_SEL_D"/>
 <reg32 offset="0x0098" name="RBBM_POWER_CNTL_IP">
  <bitfield name="SW_COLLAPSE" pos="0" type="boolean"/>
  <bitfield name="SP_TP_PWR_ON" pos="20" type="boolean"/>
 </reg32>
 <reg32 offset="0x009c" name="RBBM_PERFCTR_CP_0_LO"/>
 <reg32 offset="0x009d" name="RBBM_PERFCTR_CP_0_HI"/>
 <reg32 offset="0x009e" name="RBBM_PERFCTR_CP_1_LO"/>
 <reg32 offset="0x009f" name="RBBM_PERFCTR_CP_1_HI"/>
 <reg32 offset="0x00a0" name="RBBM_PERFCTR_CP_2_LO"/>
 <reg32 offset="0x00a1" name="RBBM_PERFCTR_CP_2_HI"/>
 <reg32 offset="0x00a2" name="RBBM_PERFCTR_CP_3_LO"/>
 <reg32 offset="0x00a3" name="RBBM_PERFCTR_CP_3_HI"/>
 <reg32 offset="0x00a4" name="RBBM_PERFCTR_CP_4_LO"/>
 <reg32 offset="0x00a5" name="RBBM_PERFCTR_CP_4_HI"/>
 <reg32 offset="0x00a6" name="RBBM_PERFCTR_CP_5_LO"/>
 <reg32 offset="0x00a7" name="RBBM_PERFCTR_CP_5_HI"/>
 <reg32 offset="0x00a8" name="RBBM_PERFCTR_CP_6_LO"/>
 <reg32 offset="0x00a9" name="RBBM_PERFCTR_CP_6_HI"/>
 <reg32 offset="0x00aa" name="RBBM_PERFCTR_CP_7_LO"/>
 <reg32 offset="0x00ab" name="RBBM_PERFCTR_CP_7_HI"/>
 <reg32 offset="0x00ac" name="RBBM_PERFCTR_RBBM_0_LO"/>
 <reg32 offset="0x00ad" name="RBBM_PERFCTR_RBBM_0_HI"/>
 <reg32 offset="0x00ae" name="RBBM_PERFCTR_RBBM_1_LO"/>
 <reg32 offset="0x00af" name="RBBM_PERFCTR_RBBM_1_HI"/>
 <reg32 offset="0x00b0" name="RBBM_PERFCTR_RBBM_2_LO"/>
 <reg32 offset="0x00b1" name="RBBM_PERFCTR_RBBM_2_HI"/>
 <reg32 offset="0x00b2" name="RBBM_PERFCTR_RBBM_3_LO"/>
 <reg32 offset="0x00b3" name="RBBM_PERFCTR_RBBM_3_HI"/>
 <reg32 offset="0x00b4" name="RBBM_PERFCTR_PC_0_LO"/>
 <reg32 offset="0x00b5" name="RBBM_PERFCTR_PC_0_HI"/>
 <reg32 offset="0x00b6" name="RBBM_PERFCTR_PC_1_LO"/>
 <reg32 offset="0x00b7" name="RBBM_PERFCTR_PC_1_HI"/>
 <reg32 offset="0x00b8" name="RBBM_PERFCTR_PC_2_LO"/>
 <reg32 offset="0x00b9" name="RBBM_PERFCTR_PC_2_HI"/>
 <reg32 offset="0x00ba" name="RBBM_PERFCTR_PC_3_LO"/>
 <reg32 offset="0x00bb" name="RBBM_PERFCTR_PC_3_HI"/>
 <reg32 offset="0x00bc" name="RBBM_PERFCTR_PC_4_LO"/>
 <reg32 offset="0x00bd" name="RBBM_PERFCTR_PC_4_HI"/>
 <reg32 offset="0x00be" name="RBBM_PERFCTR_PC_5_LO"/>
 <reg32 offset="0x00bf" name="RBBM_PERFCTR_PC_5_HI"/>
 <reg32 offset="0x00c0" name="RBBM_PERFCTR_PC_6_LO"/>
 <reg32 offset="0x00c1" name="RBBM_PERFCTR_PC_6_HI"/>
 <reg32 offset="0x00c2" name="RBBM_PERFCTR_PC_7_LO"/>
 <reg32 offset="0x00c3" name="RBBM_PERFCTR_PC_7_HI"/>
 <reg32 offset="0x00c4" name="RBBM_PERFCTR_VFD_0_LO"/>
 <reg32 offset="0x00c5" name="RBBM_PERFCTR_VFD_0_HI"/>
 <reg32 offset="0x00c6" name="RBBM_PERFCTR_VFD_1_LO"/>
 <reg32 offset="0x00c7" name="RBBM_PERFCTR_VFD_1_HI"/>
 <reg32 offset="0x00c8" name="RBBM_PERFCTR_VFD_2_LO"/>
 <reg32 offset="0x00c9" name="RBBM_PERFCTR_VFD_2_HI"/>
 <reg32 offset="0x00ca" name="RBBM_PERFCTR_VFD_3_LO"/>
 <reg32 offset="0x00cb" name="RBBM_PERFCTR_VFD_3_HI"/>
 <reg32 offset="0x00cc" name="RBBM_PERFCTR_VFD_4_LO"/>
 <reg32 offset="0x00cd" name="RBBM_PERFCTR_VFD_4_HI"/>
 <reg32 offset="0x00ce" name="RBBM_PERFCTR_VFD_5_LO"/>
 <reg32 offset="0x00cf" name="RBBM_PERFCTR_VFD_5_HI"/>
 <reg32 offset="0x00d0" name="RBBM_PERFCTR_VFD_6_LO"/>
 <reg32 offset="0x00d1" name="RBBM_PERFCTR_VFD_6_HI"/>
 <reg32 offset="0x00d2" name="RBBM_PERFCTR_VFD_7_LO"/>
 <reg32 offset="0x00d3" name="RBBM_PERFCTR_VFD_7_HI"/>
 <reg32 offset="0x00d4" name="RBBM_PERFCTR_HLSQ_0_LO"/>
 <reg32 offset="0x00d5" name="RBBM_PERFCTR_HLSQ_0_HI"/>
 <reg32 offset="0x00d6" name="RBBM_PERFCTR_HLSQ_1_LO"/>
 <reg32 offset="0x00d7" name="RBBM_PERFCTR_HLSQ_1_HI"/>
 <reg32 offset="0x00d8" name="RBBM_PERFCTR_HLSQ_2_LO"/>
 <reg32 offset="0x00d9" name="RBBM_PERFCTR_HLSQ_2_HI"/>
 <reg32 offset="0x00da" name="RBBM_PERFCTR_HLSQ_3_LO"/>
 <reg32 offset="0x00db" name="RBBM_PERFCTR_HLSQ_3_HI"/>
 <reg32 offset="0x00dc" name="RBBM_PERFCTR_HLSQ_4_LO"/>
 <reg32 offset="0x00dd" name="RBBM_PERFCTR_HLSQ_4_HI"/>
 <reg32 offset="0x00de" name="RBBM_PERFCTR_HLSQ_5_LO"/>
 <reg32 offset="0x00df" name="RBBM_PERFCTR_HLSQ_5_HI"/>
 <reg32 offset="0x00e0" name="RBBM_PERFCTR_HLSQ_6_LO"/>
 <reg32 offset="0x00e1" name="RBBM_PERFCTR_HLSQ_6_HI"/>
 <reg32 offset="0x00e2" name="RBBM_PERFCTR_HLSQ_7_LO"/>
 <reg32 offset="0x00e3" name="RBBM_PERFCTR_HLSQ_7_HI"/>
 <reg32 offset="0x00e4" name="RBBM_PERFCTR_VPC_0_LO"/>
 <reg32 offset="0x00e5" name="RBBM_PERFCTR_VPC_0_HI"/>
 <reg32 offset="0x00e6" name="RBBM_PERFCTR_VPC_1_LO"/>
 <reg32 offset="0x00e7" name="RBBM_PERFCTR_VPC_1_HI"/>
 <reg32 offset="0x00e8" name="RBBM_PERFCTR_VPC_2_LO"/>
 <reg32 offset="0x00e9" name="RBBM_PERFCTR_VPC_2_HI"/>
 <reg32 offset="0x00ea" name="RBBM_PERFCTR_VPC_3_LO"/>
 <reg32 offset="0x00eb" name="RBBM_PERFCTR_VPC_3_HI"/>
 <reg32 offset="0x00ec" name="RBBM_PERFCTR_CCU_0_LO"/>
 <reg32 offset="0x00ed" name="RBBM_PERFCTR_CCU_0_HI"/>
 <reg32 offset="0x00ee" name="RBBM_PERFCTR_CCU_1_LO"/>
 <reg32 offset="0x00ef" name="RBBM_PERFCTR_CCU_1_HI"/>
 <reg32 offset="0x00f0" name="RBBM_PERFCTR_CCU_2_LO"/>
 <reg32 offset="0x00f1" name="RBBM_PERFCTR_CCU_2_HI"/>
 <reg32 offset="0x00f2" name="RBBM_PERFCTR_CCU_3_LO"/>
 <reg32 offset="0x00f3" name="RBBM_PERFCTR_CCU_3_HI"/>
 <reg32 offset="0x00f4" name="RBBM_PERFCTR_TSE_0_LO"/>
 <reg32 offset="0x00f5" name="RBBM_PERFCTR_TSE_0_HI"/>
 <reg32 offset="0x00f6" name="RBBM_PERFCTR_TSE_1_LO"/>
 <reg32 offset="0x00f7" name="RBBM_PERFCTR_TSE_1_HI"/>
 <reg32 offset="0x00f8" name="RBBM_PERFCTR_TSE_2_LO"/>
 <reg32 offset="0x00f9" name="RBBM_PERFCTR_TSE_2_HI"/>
 <reg32 offset="0x00fa" name="RBBM_PERFCTR_TSE_3_LO"/>
 <reg32 offset="0x00fb" name="RBBM_PERFCTR_TSE_3_HI"/>
 <reg32 offset="0x00fc" name="RBBM_PERFCTR_RAS_0_LO"/>
 <reg32 offset="0x00fd" name="RBBM_PERFCTR_RAS_0_HI"/>
 <reg32 offset="0x00fe" name="RBBM_PERFCTR_RAS_1_LO"/>
 <reg32 offset="0x00ff" name="RBBM_PERFCTR_RAS_1_HI"/>
 <reg32 offset="0x0100" name="RBBM_PERFCTR_RAS_2_LO"/>
 <reg32 offset="0x0101" name="RBBM_PERFCTR_RAS_2_HI"/>
 <reg32 offset="0x0102" name="RBBM_PERFCTR_RAS_3_LO"/>
 <reg32 offset="0x0103" name="RBBM_PERFCTR_RAS_3_HI"/>
 <reg32 offset="0x0104" name="RBBM_PERFCTR_UCHE_0_LO"/>
 <reg32 offset="0x0105" name="RBBM_PERFCTR_UCHE_0_HI"/>
 <reg32 offset="0x0106" name="RBBM_PERFCTR_UCHE_1_LO"/>
 <reg32 offset="0x0107" name="RBBM_PERFCTR_UCHE_1_HI"/>
 <reg32 offset="0x0108" name="RBBM_PERFCTR_UCHE_2_LO"/>
 <reg32 offset="0x0109" name="RBBM_PERFCTR_UCHE_2_HI"/>
 <reg32 offset="0x010a" name="RBBM_PERFCTR_UCHE_3_LO"/>
 <reg32 offset="0x010b" name="RBBM_PERFCTR_UCHE_3_HI"/>
 <reg32 offset="0x010c" name="RBBM_PERFCTR_UCHE_4_LO"/>
 <reg32 offset="0x010d" name="RBBM_PERFCTR_UCHE_4_HI"/>
 <reg32 offset="0x010e" name="RBBM_PERFCTR_UCHE_5_LO"/>
 <reg32 offset="0x010f" name="RBBM_PERFCTR_UCHE_5_HI"/>
 <reg32 offset="0x0110" name="RBBM_PERFCTR_UCHE_6_LO"/>
 <reg32 offset="0x0111" name="RBBM_PERFCTR_UCHE_6_HI"/>
 <reg32 offset="0x0112" name="RBBM_PERFCTR_UCHE_7_LO"/>
 <reg32 offset="0x0113" name="RBBM_PERFCTR_UCHE_7_HI"/>
 <reg32 offset="0x0114" name="RBBM_PERFCTR_TP_0_LO"/>
 <reg32 offset="0x0115" name="RBBM_PERFCTR_TP_0_HI"/>
 <reg32 offset="0x0116" name="RBBM_PERFCTR_TP_1_LO"/>
 <reg32 offset="0x0117" name="RBBM_PERFCTR_TP_1_HI"/>
 <reg32 offset="0x0118" name="RBBM_PERFCTR_TP_2_LO"/>
 <reg32 offset="0x0119" name="RBBM_PERFCTR_TP_2_HI"/>
 <reg32 offset="0x011a" name="RBBM_PERFCTR_TP_3_LO"/>
 <reg32 offset="0x011b" name="RBBM_PERFCTR_TP_3_HI"/>
 <reg32 offset="0x011c" name="RBBM_PERFCTR_TP_4_LO"/>
 <reg32 offset="0x011d" name="RBBM_PERFCTR_TP_4_HI"/>
 <reg32 offset="0x011e" name="RBBM_PERFCTR_TP_5_LO"/>
 <reg32 offset="0x011f" name="RBBM_PERFCTR_TP_5_HI"/>
 <reg32 offset="0x0120" name="RBBM_PERFCTR_TP_6_LO"/>
 <reg32 offset="0x0121" name="RBBM_PERFCTR_TP_6_HI"/>
 <reg32 offset="0x0122" name="RBBM_PERFCTR_TP_7_LO"/>
 <reg32 offset="0x0123" name="RBBM_PERFCTR_TP_7_HI"/>
 <reg32 offset="0x0124" name="RBBM_PERFCTR_SP_0_LO"/>
 <reg32 offset="0x0125" name="RBBM_PERFCTR_SP_0_HI"/>
 <reg32 offset="0x0126" name="RBBM_PERFCTR_SP_1_LO"/>
 <reg32 offset="0x0127" name="RBBM_PERFCTR_SP_1_HI"/>
 <reg32 offset="0x0128" name="RBBM_PERFCTR_SP_2_LO"/>
 <reg32 offset="0x0129" name="RBBM_PERFCTR_SP_2_HI"/>
 <reg32 offset="0x012a" name="RBBM_PERFCTR_SP_3_LO"/>
 <reg32 offset="0x012b" name="RBBM_PERFCTR_SP_3_HI"/>
 <reg32 offset="0x012c" name="RBBM_PERFCTR_SP_4_LO"/>
 <reg32 offset="0x012d" name="RBBM_PERFCTR_SP_4_HI"/>
 <reg32 offset="0x012e" name="RBBM_PERFCTR_SP_5_LO"/>
 <reg32 offset="0x012f" name="RBBM_PERFCTR_SP_5_HI"/>
 <reg32 offset="0x0130" name="RBBM_PERFCTR_SP_6_LO"/>
 <reg32 offset="0x0131" name="RBBM_PERFCTR_SP_6_HI"/>
 <reg32 offset="0x0132" name="RBBM_PERFCTR_SP_7_LO"/>
 <reg32 offset="0x0133" name="RBBM_PERFCTR_SP_7_HI"/>
 <reg32 offset="0x0134" name="RBBM_PERFCTR_SP_8_LO"/>
 <reg32 offset="0x0135" name="RBBM_PERFCTR_SP_8_HI"/>
 <reg32 offset="0x0136" name="RBBM_PERFCTR_SP_9_LO"/>
 <reg32 offset="0x0137" name="RBBM_PERFCTR_SP_9_HI"/>
 <reg32 offset="0x0138" name="RBBM_PERFCTR_SP_10_LO"/>
 <reg32 offset="0x0139" name="RBBM_PERFCTR_SP_10_HI"/>
 <reg32 offset="0x013a" name="RBBM_PERFCTR_SP_11_LO"/>
 <reg32 offset="0x013b" name="RBBM_PERFCTR_SP_11_HI"/>
 <reg32 offset="0x013c" name="RBBM_PERFCTR_RB_0_LO"/>
 <reg32 offset="0x013d" name="RBBM_PERFCTR_RB_0_HI"/>
 <reg32 offset="0x013e" name="RBBM_PERFCTR_RB_1_LO"/>
 <reg32 offset="0x013f" name="RBBM_PERFCTR_RB_1_HI"/>
 <reg32 offset="0x0140" name="RBBM_PERFCTR_RB_2_LO"/>
 <reg32 offset="0x0141" name="RBBM_PERFCTR_RB_2_HI"/>
 <reg32 offset="0x0142" name="RBBM_PERFCTR_RB_3_LO"/>
 <reg32 offset="0x0143" name="RBBM_PERFCTR_RB_3_HI"/>
 <reg32 offset="0x0144" name="RBBM_PERFCTR_RB_4_LO"/>
 <reg32 offset="0x0145" name="RBBM_PERFCTR_RB_4_HI"/>
 <reg32 offset="0x0146" name="RBBM_PERFCTR_RB_5_LO"/>
 <reg32 offset="0x0147" name="RBBM_PERFCTR_RB_5_HI"/>
 <reg32 offset="0x0148" name="RBBM_PERFCTR_RB_6_LO"/>
 <reg32 offset="0x0149" name="RBBM_PERFCTR_RB_6_HI"/>
 <reg32 offset="0x014a" name="RBBM_PERFCTR_RB_7_LO"/>
 <reg32 offset="0x014b" name="RBBM_PERFCTR_RB_7_HI"/>
 <reg32 offset="0x014c" name="RBBM_PERFCTR_VSC_0_LO"/>
 <reg32 offset="0x014d" name="RBBM_PERFCTR_VSC_0_HI"/>
 <reg32 offset="0x014e" name="RBBM_PERFCTR_VSC_1_LO"/>
 <reg32 offset="0x014f" name="RBBM_PERFCTR_VSC_1_HI"/>
 <reg32 offset="0x0166" name="RBBM_PERFCTR_PWR_0_LO"/>
 <reg32 offset="0x0167" name="RBBM_PERFCTR_PWR_0_HI"/>
 <reg32 offset="0x0168" name="RBBM_PERFCTR_PWR_1_LO"/>
 <reg32 offset="0x0169" name="RBBM_PERFCTR_PWR_1_HI"/>
 <reg32 offset="0x016e" name="RBBM_ALWAYSON_COUNTER_LO"/>
 <reg32 offset="0x016f" name="RBBM_ALWAYSON_COUNTER_HI"/>
 <array offset="0x0068" name="RBBM_CLOCK_CTL_SP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x006c" name="RBBM_CLOCK_CTL2_SP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x0070" name="RBBM_CLOCK_HYST_SP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x0074" name="RBBM_CLOCK_DELAY_SP" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x0078" name="RBBM_CLOCK_CTL_RB" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x007c" name="RBBM_CLOCK_CTL2_RB" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x0082" name="RBBM_CLOCK_CTL_MARB_CCU" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <array offset="0x0086" name="RBBM_CLOCK_HYST_RB_MARB_CCU" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <reg32 offset="0x0080" name="RBBM_CLOCK_HYST_COM_DCOM"/>
 <reg32 offset="0x0081" name="RBBM_CLOCK_CTL_COM_DCOM"/>
 <reg32 offset="0x008a" name="RBBM_CLOCK_CTL_HLSQ"/>
 <reg32 offset="0x008b" name="RBBM_CLOCK_HYST_HLSQ"/>
 <reg32 offset="0x008c" name="RBBM_CLOCK_DELAY_HLSQ"/>
 <bitset name="A4XX_CGC_HLSQ">
  <bitfield name="EARLY_CYC" low="20" high="22" type="uint"/>
 </bitset>
 <reg32 offset="0x008d" name="RBBM_CLOCK_DELAY_COM_DCOM"/>
 <array offset="0x008e" name="RBBM_CLOCK_DELAY_RB_MARB_CCU_L1" stride="1" length="4">
  <reg32 offset="0x0" name="REG"/>
 </array>
 <bitset name="A4XX_INT0">
  <bitfield name="RBBM_GPU_IDLE" pos="0" type="boolean"/>
  <bitfield name="RBBM_AHB_ERROR" pos="1" type="boolean"/>
  <bitfield name="RBBM_REG_TIMEOUT" pos="2" type="boolean"/>
  <bitfield name="RBBM_ME_MS_TIMEOUT" pos="3" type="boolean"/>
  <bitfield name="RBBM_PFP_MS_TIMEOUT" pos="4" type="boolean"/>
  <bitfield name="RBBM_ATB_BUS_OVERFLOW" pos="5" type="boolean"/>
  <bitfield name="VFD_ERROR" pos="6" type="boolean"/>
  <bitfield name="CP_SW_INT" pos="7" type="boolean"/>
  <bitfield name="CP_T0_PACKET_IN_IB" pos="8" type="boolean"/>
  <bitfield name="CP_OPCODE_ERROR" pos="9" type="boolean"/>
  <bitfield name="CP_RESERVED_BIT_ERROR" pos="10" type="boolean"/>
  <bitfield name="CP_HW_FAULT" pos="11" type="boolean"/>
  <bitfield name="CP_DMA" pos="12" type="boolean"/>
  <bitfield name="CP_IB2_INT" pos="13" type="boolean"/>
  <bitfield name="CP_IB1_INT" pos="14" type="boolean"/>
  <bitfield name="CP_RB_INT" pos="15" type="boolean"/>
  <bitfield name="CP_REG_PROTECT_FAULT" pos="16" type="boolean"/>
  <bitfield name="CP_RB_DONE_TS" pos="17" type="boolean"/>
  <bitfield name="CP_VS_DONE_TS" pos="18" type="boolean"/>
  <bitfield name="CP_PS_DONE_TS" pos="19" type="boolean"/>
--> --------------------

--> maximum size reached

--> --------------------

Messung V0.5
C=97 H=91 G=93

¤ Dauer der Verarbeitung: 0.19 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.