user: 提供的汇编代码用C语言表示会是什么样子：

```asm
<init_gen7_instdone>:
  endbr64
  sub    $0x8,%rsp
  lea    D163(%rip),%rsi
  mov    $0x80000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D97(%rip),%rsi
  mov    $0x40000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D34(%rip),%rsi
  mov    $0x20000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D140(%rip),%rsi
  mov    $0x10000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D4(%rip),%rsi
  mov    $0x8000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D37(%rip),%rsi
  mov    $0x4000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D74(%rip),%rsi
  mov    $0x2000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D77(%rip),%rsi
  mov    $0x1000,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D82(%rip),%rsi
  mov    $0x200,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D141(%rip),%rsi
  mov    $0x100,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D79(%rip),%rsi
  mov    $0x80,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D21(%rip),%rsi
  mov    $0x40,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D169(%rip),%rsi
  mov    $0x20,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D14(%rip),%rsi
  mov    $0x10,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D158(%rip),%rsi
  mov    $0x8,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D31(%rip),%rsi
  mov    $0x4,%edi
  call   <gen6_instdone1_bit@plt>
  lea    D151(%rip),%rsi
  mov    $0x2,%edi
  call   <gen6_instdone1_bit@plt>
  add    $0x8,%rsp
  ret
```

tool_calls: name: parse_data
arguments: tag: D163
type_infered: string
name: parse_data
arguments: tag: D97
type_infered: string
name: parse_data
arguments: tag: D34
type_infered: string
name: parse_data
arguments: tag: D140
type_infered: string
name: parse_data
arguments: tag: D4
type_infered: string
name: parse_data
arguments: tag: D37
type_infered: string
name: parse_data
arguments: tag: D74
type_infered: string
name: parse_data
arguments: tag: D77
type_infered: string
name: parse_data
arguments: tag: D82
type_infered: string
name: parse_data
arguments: tag: D141
type_infered: string
name: parse_data
arguments: tag: D79
type_infered: string
name: parse_data
arguments: tag: D21
type_infered: string
name: parse_data
arguments: tag: D169
type_infered: string
name: parse_data
arguments: tag: D14
type_infered: string
name: parse_data
arguments: tag: D158
type_infered: string
name: parse_data
arguments: tag: D31
type_infered: string
name: parse_data
arguments: tag: D151
type_infered: string

tool: D163: Memory Arbiter (GAM)

tool: D97: GAFM

tool: D34: Thread Spawner (TSG)

tool: D140: Video Front-End (VFE)

tool: D4: GAFS

tool: D37: SVG

tool: D74: Uni. Ret. Buf. Mgr. (URBM)

tool: D77: Thread Dispatcher (TDG)

tool: D82: FF Strips & Fans (SF)

tool: D141: FF Clip Unit (CL)

tool: D79: FF Stream Output Logic (SOL)

tool: D21: FF Geometry Shader (GS)

tool: D169: FF Domain Shader (DS)

tool: D14: FF Tessellation Engine (TE)

tool: D158: FF Hull Shader (HS)

tool: D31: FF Vertex Shader (VS)

tool: D151: FF Vertex Fetch (VF)

assistant: ```c
void init_gen7_instdone(void) {
  gen6_instdone1_bit(1 << 19, "Memory Arbiter (GAM)");
  gen6_instdone1_bit(1 << 18, "GAFM");
  gen6_instdone1_bit(1 << 17, "Thread Spawner (TSG)");
  gen6_instdone1_bit(1 << 16, "Video Front-End (VFE)");
  gen6_instdone1_bit(1 << 15, "GAFS");
  gen6_instdone1_bit(1 << 14, "SVG");
  gen6_instdone1_bit(1 << 13, "Uni. Ret. Buf. Mgr. (URBM)");
  gen6_instdone1_bit(1 << 12, "Thread Dispatcher (TDG)");
  gen6_instdone1_bit(1 << 9, "FF Strips & Fans (SF)");
  gen6_instdone1_bit(1 << 8, "FF Clip Unit (CL)");
  gen6_instdone1_bit(1 << 7, "FF Stream Output Logic (SOL)");
  gen6_instdone1_bit(1 << 6, "FF Geometry Shader (GS)");
  gen6_instdone1_bit(1 << 5, "FF Domain Shader (DS)");
  gen6_instdone1_bit(1 << 4, "FF Tessellation Engine (TE)");
  gen6_instdone1_bit(1 << 3, "FF Hull Shader (HS)");
  gen6_instdone1_bit(1 << 2, "FF Vertex Shader (VS)");
  gen6_instdone1_bit(1 << 1, "FF Vertex Fetch (VF)");
}
```