Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #version 410 core
  2.  
  3. // Stubbed. Maxwell geometry shaders don't inform input geometry type
  4. layout(triangles) in;
  5.  
  6. layout(triangle_strip, max_vertices = 3) out;
  7.  
  8. vec4 attr0[3];
  9. vec4 attr1[3];
  10.  
  11. in Vertex {
  12.     vec2 in_attr0;
  13.     float in_attr1;
  14. } block_in[];
  15.  
  16. layout (location = 15) out vec4 position;
  17. layout (location = 0) out vec2 out_attr0;
  18. layout (location = 1) out float out_attr1;
  19.  
  20. float gpr0;
  21. float gpr1;
  22. float gpr2;
  23. float gpr3;
  24. float gpr4;
  25. float gpr5;
  26. float gpr6;
  27. float gpr7;
  28. float gpr8;
  29. float gpr9;
  30. float gpr10;
  31. float gpr11;
  32. float gpr12;
  33.  
  34. bool pred0;
  35.  
  36. void program() {
  37.     // 0x0000000000000008: 0x1c0000000017ff0b Iadd_I32
  38.     gpr11 = intBitsToFloat(0 + 1);
  39.     // 0x0000000000000010: 0xf0c8000001d7000a Mov_S
  40.     // Stubbed.
  41.     gpr10 = 0;
  42.     // 0x0000000000000018: 0x5f047f8020a70a07 Vmad
  43.     // Stubbed. Instruction is reduced to a * b + c
  44.     gpr7 = intBitsToFloat((floatBitsToInt(gpr10) * floatBitsToInt(gpr10)) + 0);
  45.     // 0x0000000000000028: 0xefd0000000070704 Isberd
  46.     // Stubbed.
  47.     gpr4 = gpr7;
  48.     // 0x0000000000000030: 0x50f41ba06ff70a07 ???
  49.     // 0x0000000000000038: 0x5f04058020a70a0c Vmad
  50.     // Stubbed. Instruction is reduced to a * b + c
  51.     gpr12 = intBitsToFloat((floatBitsToInt(gpr10) * floatBitsToInt(gpr10)) + floatBitsToInt(gpr11));
  52.     // 0x0000000000000048: 0xefd0000000070c08 Isberd
  53.     // Stubbed.
  54.     gpr8 = gpr12;
  55.     // 0x0000000000000050: 0x010800000000f004 Mov_I32
  56.     if (pred0) {
  57.         gpr4 = 0;
  58.     }
  59.     // 0x0000000000000058: 0xefd802000707ff01 Ld_A
  60.     gpr1 = gl_Position.x;
  61.     // 0x0000000000000068: 0xefd802000747ff02 Ld_A
  62.     gpr2 = gl_Position.y;
  63.     // 0x0000000000000070: 0xefd802000787ff03 Ld_A
  64.     gpr3 = gl_Position.z;
  65.     // 0x0000000000000078: 0xefd8020007c7ff05 Ld_A
  66.     gpr5 = gl_Position.w;
  67.     // 0x0000000000000088: 0xefd802000807ff06 Ld_A
  68.     gpr6 = attr0[floatBitsToInt(gpr4)].x;
  69.     // 0x0000000000000090: 0xefd802000847ff07 Ld_A
  70.     gpr7 = attr0[floatBitsToInt(gpr4)].y;
  71.     // 0x0000000000000098: 0xefd802000907ff09 Ld_A
  72.     gpr9 = attr1[floatBitsToInt(gpr4)].x;
  73.     // 0x00000000000000a8: 0x50f41ba060b70a07 ???
  74.     // 0x00000000000000b0: 0x1c0000000027ff0b Iadd_I32
  75.     gpr11 = intBitsToFloat(0 + 2);
  76.     // 0x00000000000000b8: 0x5c9807800ff70000 Mov_R
  77.     gpr0 = 0;
  78.     // 0x00000000000000c8: 0x5f04058020a70a0c Vmad
  79.     // Stubbed. Instruction is reduced to a * b + c
  80.     gpr12 = intBitsToFloat((floatBitsToInt(gpr10) * floatBitsToInt(gpr10)) + floatBitsToInt(gpr11));
  81.     // 0x00000000000000d0: 0xeff000000707ff01 St_A
  82.     gl_Position.x = gpr1;
  83.     // 0x00000000000000d8: 0x010800000000f008 Mov_I32
  84.     if (pred0) {
  85.         gpr8 = 0;
  86.     }
  87.     // 0x00000000000000e8: 0xefd0000000070c04 Isberd
  88.     // Stubbed.
  89.     gpr4 = gpr12;
  90.     // 0x00000000000000f0: 0x50f41ba060b70a07 ???
  91.     // 0x00000000000000f8: 0xeff000000747ff02 St_A
  92.     gl_Position.y = gpr2;
  93.     // 0x0000000000000108: 0xeff000000787ff03 St_A
  94.     gl_Position.z = gpr3;
  95.     // 0x0000000000000110: 0xeff0000007c7ff05 St_A
  96.     gl_Position.w = gpr5;
  97.     // 0x0000000000000118: 0xeff000000807ff06 St_A
  98.     attr0[floatBitsToInt(gpr0)].x = gpr6;
  99.     // 0x0000000000000128: 0xeff000000847ff07 St_A
  100.     attr0[floatBitsToInt(gpr0)].y = gpr7;
  101.     // 0x0000000000000130: 0xeff000000647ff09 St_A
  102.     gl_Layer = floatBitsToInt(gpr9);
  103.     // 0x0000000000000138: 0xeff000000907ff09 St_A
  104.     attr1[floatBitsToInt(gpr0)].x = gpr9;
  105.     // 0x0000000000000148: 0xfbe000800ff70000 Out_R
  106.     out_attr0 = attr0[0].xy;
  107.     out_attr1 = attr1[0].x;
  108.     position = gl_Position;
  109.     position.w = 1;
  110.     EmitVertex();
  111.     // 0x0000000000000150: 0xefd804000707ff01 Ld_A
  112.     gpr1 = gl_Position.x;
  113.     // 0x0000000000000158: 0xefd804000747ff02 Ld_A
  114.     gpr2 = gl_Position.y;
  115.     // 0x0000000000000168: 0xefd804000787ff03 Ld_A
  116.     gpr3 = gl_Position.z;
  117.     // 0x0000000000000170: 0xefd8040007c7ff05 Ld_A
  118.     gpr5 = gl_Position.w;
  119.     // 0x0000000000000178: 0xefd804000807ff06 Ld_A
  120.     gpr6 = attr0[floatBitsToInt(gpr8)].x;
  121.     // 0x0000000000000188: 0xefd804000847ff07 Ld_A
  122.     gpr7 = attr0[floatBitsToInt(gpr8)].y;
  123.     // 0x0000000000000190: 0xefd804000907ff09 Ld_A
  124.     gpr9 = attr1[floatBitsToInt(gpr8)].x;
  125.     // 0x0000000000000198: 0x010800000000f004 Mov_I32
  126.     if (pred0) {
  127.         gpr4 = 0;
  128.     }
  129.     // 0x00000000000001a8: 0xeff000000707ff01 St_A
  130.     gl_Position.x = gpr1;
  131.     // 0x00000000000001b0: 0xeff000000747ff02 St_A
  132.     gl_Position.y = gpr2;
  133.     // 0x00000000000001b8: 0xeff000000787ff03 St_A
  134.     gl_Position.z = gpr3;
  135.     // 0x00000000000001c8: 0xeff0000007c7ff05 St_A
  136.     gl_Position.w = gpr5;
  137.     // 0x00000000000001d0: 0xeff000000807ff06 St_A
  138.     attr0[floatBitsToInt(gpr0)].x = gpr6;
  139.     // 0x00000000000001d8: 0xeff000000847ff07 St_A
  140.     attr0[floatBitsToInt(gpr0)].y = gpr7;
  141.     // 0x00000000000001e8: 0xeff000000647ff09 St_A
  142.     gl_Layer = floatBitsToInt(gpr9);
  143.     // 0x00000000000001f0: 0xeff000000907ff09 St_A
  144.     attr1[floatBitsToInt(gpr0)].x = gpr9;
  145.     // 0x00000000000001f8: 0xfbe000800ff70000 Out_R
  146.     out_attr0 = attr0[0].xy;
  147.     out_attr1 = attr1[0].x;
  148.     position = gl_Position;
  149.     position.w = 1;
  150.     EmitVertex();
  151.     // 0x0000000000000208: 0xefd802000707ff01 Ld_A
  152.     gpr1 = gl_Position.x;
  153.     // 0x0000000000000210: 0xefd802000747ff02 Ld_A
  154.     gpr2 = gl_Position.y;
  155.     // 0x0000000000000218: 0xefd802000787ff03 Ld_A
  156.     gpr3 = gl_Position.z;
  157.     // 0x0000000000000228: 0xefd8020007c7ff05 Ld_A
  158.     gpr5 = gl_Position.w;
  159.     // 0x0000000000000230: 0xefd802000807ff06 Ld_A
  160.     gpr6 = attr0[floatBitsToInt(gpr4)].x;
  161.     // 0x0000000000000238: 0xefd802000847ff07 Ld_A
  162.     gpr7 = attr0[floatBitsToInt(gpr4)].y;
  163.     // 0x0000000000000248: 0xefd802000907ff0a Ld_A
  164.     gpr10 = attr1[floatBitsToInt(gpr4)].x;
  165.     // 0x0000000000000250: 0xeff000000707ff01 St_A
  166.     gl_Position.x = gpr1;
  167.     // 0x0000000000000258: 0xeff000000747ff02 St_A
  168.     gl_Position.y = gpr2;
  169.     // 0x0000000000000268: 0xeff000000787ff03 St_A
  170.     gl_Position.z = gpr3;
  171.     // 0x0000000000000270: 0xeff0000007c7ff05 St_A
  172.     gl_Position.w = gpr5;
  173.     // 0x0000000000000278: 0xeff000000807ff06 St_A
  174.     attr0[floatBitsToInt(gpr0)].x = gpr6;
  175.     // 0x0000000000000288: 0xeff000000847ff07 St_A
  176.     attr0[floatBitsToInt(gpr0)].y = gpr7;
  177.     // 0x0000000000000290: 0xeff000000647ff0a St_A
  178.     gl_Layer = floatBitsToInt(gpr10);
  179.     // 0x0000000000000298: 0xeff000000907ff0a St_A
  180.     attr1[floatBitsToInt(gpr0)].x = gpr10;
  181.     // 0x00000000000002a8: 0xfbe000800ff70000 Out_R
  182.     out_attr0 = attr0[0].xy;
  183.     out_attr1 = attr1[0].x;
  184.     position = gl_Position;
  185.     position.w = 1;
  186.     EmitVertex();
  187.     // 0x00000000000002b0: 0xe30000000007000f Exit
  188.     return;
  189. }
  190.  
  191. void main() {
  192.     attr0[0].xy = block_in[0].in_attr0;
  193.     attr0[1].xy = block_in[1].in_attr0;
  194.     attr0[2].xy = block_in[2].in_attr0;
  195.     attr1[0].x = block_in[0].in_attr1;
  196.     attr1[1].x = block_in[1].in_attr1;
  197.     attr1[2].x = block_in[2].in_attr1;
  198.     program();
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement