- "general_purpose" => [
- { "name" => "eax", "type" => 2 },
- { "name" => "edx", "type" => 2 },
- { "name" => "ebx", "type" => 3 },
- { "name" => "ecx", "type" => 2 },
- { "name" => "esi", "type" => 3 },
- { "name" => "edi", "type" => 3 },
- { "name" => "ebp", "type" => 3 },
- { "name" => "esp", "type" => 4 } # we don't want esp to be assigned
- ],
- "floating_point" => [
- { "name" => "xmm0", "type" => 2 },
- { "name" => "xmm1", "type" => 2 },
- { "name" => "xmm2", "type" => 2 },
- { "name" => "xmm3", "type" => 2 },
- { "name" => "xmm4", "type" => 2 },
- { "name" => "xmm5", "type" => 2 },
- { "name" => "xmm6", "type" => 2 },
- { "name" => "xmm7", "type" => 2 },
- ]
+ "gp" => [
+ { "name" => "eax", "type" => 1 },
+ { "name" => "edx", "type" => 1 },
+ { "name" => "ebx", "type" => 2 },
+ { "name" => "ecx", "type" => 1 },
+ { "name" => "esi", "type" => 2 },
+ { "name" => "edi", "type" => 2 },
+ { "name" => "ebp", "type" => 2 },
+ { "name" => "esp", "type" => 6 },
+ { "name" => "xxx", "type" => 6 }, # we need a dummy register for NoReg and Unknown nodes
+ { "mode" => "mode_P" }
+ ],
+ "fp" => [
+ { "name" => "xmm0", "type" => 1 },
+ { "name" => "xmm1", "type" => 1 },
+ { "name" => "xmm2", "type" => 1 },
+ { "name" => "xmm3", "type" => 1 },
+ { "name" => "xmm4", "type" => 1 },
+ { "name" => "xmm5", "type" => 1 },
+ { "name" => "xmm6", "type" => 1 },
+ { "name" => "xmm7", "type" => 1 },
+ { "name" => "xxxx", "type" => 6 }, # we need a dummy register for NoReg and Unknown nodes
+ { "mode" => "mode_D" }
+ ]