A large user-defined overload set (`pick`/`pick2`, scalar + vector + two-arg candidates), then `n` call sites with rotating argument types. Every call enumerates all candidates and ranks them by conversion cost to choose the best match — isolating the candidate-ranking cost that scales with overload-set size times call-site count. Scaling null: n scales call sites against a FIXED candidate set; ideal resolution cost is O(n).
bucket: typecheck · compile mode: module · flags: (none) · default N: 600
Full sub-counter decomposition of compileInner — named leaf timers plus (self) residuals (a parent's time not covered by a named child, e.g. the autodiff transform in linkAndOptimizeIR (self)). Topmost band traces compileInner; hover a band for its phase.
Overall compileInner: 34.6 → 34.9 ms +0.6% (2026-07-30 7c58a326b → 2026-08-29 28c755b09)
Contributors — the mutually-exclusive phase buckets (named leaves + (self) residuals) that tile compileInner; the pp column sums to the overall %. Buckets moving the total by ≥0.2% are listed, the rest fold into the remainder row. Below them, every other reported counter (nested/overlapping, e.g. serialized-module reads — own change only):
| counter | Δ | own % | of total |
|---|---|---|---|
| generateOutput (self) | +0.2 ms | +3.4% | +0.5pp |
| SemanticChecking | +0.1 ms | +0.4% | +0.2pp |
| (remaining 4 buckets) | -0.0 ms | – | -0.1pp |
| readSerializedModuleIR | -2.3 ms | -4.3% | – |
| loadBuiltinModule | -1.2 ms | -1.2% | – |
Largest day steps (≥5% of the previous day, both directions; bisect with git log <c0>..<c1> -- source/):
| boundary | % vs prev day | commits | top buckets (own %) |
|---|---|---|---|
| none | |||
Run from the slang repo root. This regenerates the sources below and re-runs this workload's measurement; --gen-dir keeps the generated files (they go to a tempdir and are deleted otherwise).
python3 tools/compile-perf/bench.py --slangc /path/to/slangc --only overload_resolution --label repro --gen-dir repro-overload_resolution
the complete compiled source (N = 600), shown in full
// AUTO-GENERATED by perf-suite/workloads.py - do not edit by hand.
RWStructuredBuffer<float> outBuf;
float pick(float x) { return float(x) + 1.0; }
float pick(int x) { return float(x) + 1.0; }
float pick(uint x) { return float(x) + 1.0; }
float pick(float2 x) { return float(x[0] + x[0]); }
float pick(float3 x) { return float(x[0] + x[0]); }
float pick(float4 x) { return float(x[0] + x[0]); }
float pick2(float a, float b) { return float(a) + float(b); }
float pick2(int a, float b) { return float(a) + float(b); }
float pick2(float a, int b) { return float(a) + float(b); }
float pick2(int a, int b) { return float(a) + float(b); }
float pick2(uint a, float b) { return float(a) + float(b); }
float pick2(float a, uint b) { return float(a) + float(b); }
float call_0() { return pick(1.0) + pick2(1.0, 2.0); }
float call_1() { return pick(2) + pick2(3, 4.0); }
float call_2() { return pick(3u) + pick2(5.0, 6); }
float call_3() { return pick(float2(1.0)) + pick2(7, 8); }
float call_4() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_5() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_6() { return pick(1.0) + pick2(1.0, 2.0); }
float call_7() { return pick(2) + pick2(3, 4.0); }
float call_8() { return pick(3u) + pick2(5.0, 6); }
float call_9() { return pick(float2(1.0)) + pick2(7, 8); }
float call_10() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_11() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_12() { return pick(1.0) + pick2(1.0, 2.0); }
float call_13() { return pick(2) + pick2(3, 4.0); }
float call_14() { return pick(3u) + pick2(5.0, 6); }
float call_15() { return pick(float2(1.0)) + pick2(7, 8); }
float call_16() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_17() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_18() { return pick(1.0) + pick2(1.0, 2.0); }
float call_19() { return pick(2) + pick2(3, 4.0); }
float call_20() { return pick(3u) + pick2(5.0, 6); }
float call_21() { return pick(float2(1.0)) + pick2(7, 8); }
float call_22() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_23() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_24() { return pick(1.0) + pick2(1.0, 2.0); }
float call_25() { return pick(2) + pick2(3, 4.0); }
float call_26() { return pick(3u) + pick2(5.0, 6); }
float call_27() { return pick(float2(1.0)) + pick2(7, 8); }
float call_28() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_29() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_30() { return pick(1.0) + pick2(1.0, 2.0); }
float call_31() { return pick(2) + pick2(3, 4.0); }
float call_32() { return pick(3u) + pick2(5.0, 6); }
float call_33() { return pick(float2(1.0)) + pick2(7, 8); }
float call_34() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_35() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_36() { return pick(1.0) + pick2(1.0, 2.0); }
float call_37() { return pick(2) + pick2(3, 4.0); }
float call_38() { return pick(3u) + pick2(5.0, 6); }
float call_39() { return pick(float2(1.0)) + pick2(7, 8); }
float call_40() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_41() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_42() { return pick(1.0) + pick2(1.0, 2.0); }
float call_43() { return pick(2) + pick2(3, 4.0); }
float call_44() { return pick(3u) + pick2(5.0, 6); }
float call_45() { return pick(float2(1.0)) + pick2(7, 8); }
float call_46() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_47() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_48() { return pick(1.0) + pick2(1.0, 2.0); }
float call_49() { return pick(2) + pick2(3, 4.0); }
float call_50() { return pick(3u) + pick2(5.0, 6); }
float call_51() { return pick(float2(1.0)) + pick2(7, 8); }
float call_52() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_53() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_54() { return pick(1.0) + pick2(1.0, 2.0); }
float call_55() { return pick(2) + pick2(3, 4.0); }
float call_56() { return pick(3u) + pick2(5.0, 6); }
float call_57() { return pick(float2(1.0)) + pick2(7, 8); }
float call_58() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_59() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_60() { return pick(1.0) + pick2(1.0, 2.0); }
float call_61() { return pick(2) + pick2(3, 4.0); }
float call_62() { return pick(3u) + pick2(5.0, 6); }
float call_63() { return pick(float2(1.0)) + pick2(7, 8); }
float call_64() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_65() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_66() { return pick(1.0) + pick2(1.0, 2.0); }
float call_67() { return pick(2) + pick2(3, 4.0); }
float call_68() { return pick(3u) + pick2(5.0, 6); }
float call_69() { return pick(float2(1.0)) + pick2(7, 8); }
float call_70() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_71() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_72() { return pick(1.0) + pick2(1.0, 2.0); }
float call_73() { return pick(2) + pick2(3, 4.0); }
float call_74() { return pick(3u) + pick2(5.0, 6); }
float call_75() { return pick(float2(1.0)) + pick2(7, 8); }
float call_76() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_77() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_78() { return pick(1.0) + pick2(1.0, 2.0); }
float call_79() { return pick(2) + pick2(3, 4.0); }
float call_80() { return pick(3u) + pick2(5.0, 6); }
float call_81() { return pick(float2(1.0)) + pick2(7, 8); }
float call_82() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_83() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_84() { return pick(1.0) + pick2(1.0, 2.0); }
float call_85() { return pick(2) + pick2(3, 4.0); }
float call_86() { return pick(3u) + pick2(5.0, 6); }
float call_87() { return pick(float2(1.0)) + pick2(7, 8); }
float call_88() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_89() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_90() { return pick(1.0) + pick2(1.0, 2.0); }
float call_91() { return pick(2) + pick2(3, 4.0); }
float call_92() { return pick(3u) + pick2(5.0, 6); }
float call_93() { return pick(float2(1.0)) + pick2(7, 8); }
float call_94() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_95() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_96() { return pick(1.0) + pick2(1.0, 2.0); }
float call_97() { return pick(2) + pick2(3, 4.0); }
float call_98() { return pick(3u) + pick2(5.0, 6); }
float call_99() { return pick(float2(1.0)) + pick2(7, 8); }
float call_100() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_101() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_102() { return pick(1.0) + pick2(1.0, 2.0); }
float call_103() { return pick(2) + pick2(3, 4.0); }
float call_104() { return pick(3u) + pick2(5.0, 6); }
float call_105() { return pick(float2(1.0)) + pick2(7, 8); }
float call_106() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_107() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_108() { return pick(1.0) + pick2(1.0, 2.0); }
float call_109() { return pick(2) + pick2(3, 4.0); }
float call_110() { return pick(3u) + pick2(5.0, 6); }
float call_111() { return pick(float2(1.0)) + pick2(7, 8); }
float call_112() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_113() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_114() { return pick(1.0) + pick2(1.0, 2.0); }
float call_115() { return pick(2) + pick2(3, 4.0); }
float call_116() { return pick(3u) + pick2(5.0, 6); }
float call_117() { return pick(float2(1.0)) + pick2(7, 8); }
float call_118() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_119() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_120() { return pick(1.0) + pick2(1.0, 2.0); }
float call_121() { return pick(2) + pick2(3, 4.0); }
float call_122() { return pick(3u) + pick2(5.0, 6); }
float call_123() { return pick(float2(1.0)) + pick2(7, 8); }
float call_124() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_125() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_126() { return pick(1.0) + pick2(1.0, 2.0); }
float call_127() { return pick(2) + pick2(3, 4.0); }
float call_128() { return pick(3u) + pick2(5.0, 6); }
float call_129() { return pick(float2(1.0)) + pick2(7, 8); }
float call_130() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_131() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_132() { return pick(1.0) + pick2(1.0, 2.0); }
float call_133() { return pick(2) + pick2(3, 4.0); }
float call_134() { return pick(3u) + pick2(5.0, 6); }
float call_135() { return pick(float2(1.0)) + pick2(7, 8); }
float call_136() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_137() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_138() { return pick(1.0) + pick2(1.0, 2.0); }
float call_139() { return pick(2) + pick2(3, 4.0); }
float call_140() { return pick(3u) + pick2(5.0, 6); }
float call_141() { return pick(float2(1.0)) + pick2(7, 8); }
float call_142() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_143() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_144() { return pick(1.0) + pick2(1.0, 2.0); }
float call_145() { return pick(2) + pick2(3, 4.0); }
float call_146() { return pick(3u) + pick2(5.0, 6); }
float call_147() { return pick(float2(1.0)) + pick2(7, 8); }
float call_148() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_149() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_150() { return pick(1.0) + pick2(1.0, 2.0); }
float call_151() { return pick(2) + pick2(3, 4.0); }
float call_152() { return pick(3u) + pick2(5.0, 6); }
float call_153() { return pick(float2(1.0)) + pick2(7, 8); }
float call_154() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_155() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_156() { return pick(1.0) + pick2(1.0, 2.0); }
float call_157() { return pick(2) + pick2(3, 4.0); }
float call_158() { return pick(3u) + pick2(5.0, 6); }
float call_159() { return pick(float2(1.0)) + pick2(7, 8); }
float call_160() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_161() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_162() { return pick(1.0) + pick2(1.0, 2.0); }
float call_163() { return pick(2) + pick2(3, 4.0); }
float call_164() { return pick(3u) + pick2(5.0, 6); }
float call_165() { return pick(float2(1.0)) + pick2(7, 8); }
float call_166() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_167() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_168() { return pick(1.0) + pick2(1.0, 2.0); }
float call_169() { return pick(2) + pick2(3, 4.0); }
float call_170() { return pick(3u) + pick2(5.0, 6); }
float call_171() { return pick(float2(1.0)) + pick2(7, 8); }
float call_172() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_173() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_174() { return pick(1.0) + pick2(1.0, 2.0); }
float call_175() { return pick(2) + pick2(3, 4.0); }
float call_176() { return pick(3u) + pick2(5.0, 6); }
float call_177() { return pick(float2(1.0)) + pick2(7, 8); }
float call_178() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_179() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_180() { return pick(1.0) + pick2(1.0, 2.0); }
float call_181() { return pick(2) + pick2(3, 4.0); }
float call_182() { return pick(3u) + pick2(5.0, 6); }
float call_183() { return pick(float2(1.0)) + pick2(7, 8); }
float call_184() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_185() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_186() { return pick(1.0) + pick2(1.0, 2.0); }
float call_187() { return pick(2) + pick2(3, 4.0); }
float call_188() { return pick(3u) + pick2(5.0, 6); }
float call_189() { return pick(float2(1.0)) + pick2(7, 8); }
float call_190() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_191() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_192() { return pick(1.0) + pick2(1.0, 2.0); }
float call_193() { return pick(2) + pick2(3, 4.0); }
float call_194() { return pick(3u) + pick2(5.0, 6); }
float call_195() { return pick(float2(1.0)) + pick2(7, 8); }
float call_196() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_197() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_198() { return pick(1.0) + pick2(1.0, 2.0); }
float call_199() { return pick(2) + pick2(3, 4.0); }
float call_200() { return pick(3u) + pick2(5.0, 6); }
float call_201() { return pick(float2(1.0)) + pick2(7, 8); }
float call_202() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_203() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_204() { return pick(1.0) + pick2(1.0, 2.0); }
float call_205() { return pick(2) + pick2(3, 4.0); }
float call_206() { return pick(3u) + pick2(5.0, 6); }
float call_207() { return pick(float2(1.0)) + pick2(7, 8); }
float call_208() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_209() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_210() { return pick(1.0) + pick2(1.0, 2.0); }
float call_211() { return pick(2) + pick2(3, 4.0); }
float call_212() { return pick(3u) + pick2(5.0, 6); }
float call_213() { return pick(float2(1.0)) + pick2(7, 8); }
float call_214() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_215() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_216() { return pick(1.0) + pick2(1.0, 2.0); }
float call_217() { return pick(2) + pick2(3, 4.0); }
float call_218() { return pick(3u) + pick2(5.0, 6); }
float call_219() { return pick(float2(1.0)) + pick2(7, 8); }
float call_220() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_221() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_222() { return pick(1.0) + pick2(1.0, 2.0); }
float call_223() { return pick(2) + pick2(3, 4.0); }
float call_224() { return pick(3u) + pick2(5.0, 6); }
float call_225() { return pick(float2(1.0)) + pick2(7, 8); }
float call_226() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_227() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_228() { return pick(1.0) + pick2(1.0, 2.0); }
float call_229() { return pick(2) + pick2(3, 4.0); }
float call_230() { return pick(3u) + pick2(5.0, 6); }
float call_231() { return pick(float2(1.0)) + pick2(7, 8); }
float call_232() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_233() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_234() { return pick(1.0) + pick2(1.0, 2.0); }
float call_235() { return pick(2) + pick2(3, 4.0); }
float call_236() { return pick(3u) + pick2(5.0, 6); }
float call_237() { return pick(float2(1.0)) + pick2(7, 8); }
float call_238() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_239() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_240() { return pick(1.0) + pick2(1.0, 2.0); }
float call_241() { return pick(2) + pick2(3, 4.0); }
float call_242() { return pick(3u) + pick2(5.0, 6); }
float call_243() { return pick(float2(1.0)) + pick2(7, 8); }
float call_244() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_245() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_246() { return pick(1.0) + pick2(1.0, 2.0); }
float call_247() { return pick(2) + pick2(3, 4.0); }
float call_248() { return pick(3u) + pick2(5.0, 6); }
float call_249() { return pick(float2(1.0)) + pick2(7, 8); }
float call_250() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_251() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_252() { return pick(1.0) + pick2(1.0, 2.0); }
float call_253() { return pick(2) + pick2(3, 4.0); }
float call_254() { return pick(3u) + pick2(5.0, 6); }
float call_255() { return pick(float2(1.0)) + pick2(7, 8); }
float call_256() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_257() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_258() { return pick(1.0) + pick2(1.0, 2.0); }
float call_259() { return pick(2) + pick2(3, 4.0); }
float call_260() { return pick(3u) + pick2(5.0, 6); }
float call_261() { return pick(float2(1.0)) + pick2(7, 8); }
float call_262() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_263() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_264() { return pick(1.0) + pick2(1.0, 2.0); }
float call_265() { return pick(2) + pick2(3, 4.0); }
float call_266() { return pick(3u) + pick2(5.0, 6); }
float call_267() { return pick(float2(1.0)) + pick2(7, 8); }
float call_268() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_269() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_270() { return pick(1.0) + pick2(1.0, 2.0); }
float call_271() { return pick(2) + pick2(3, 4.0); }
float call_272() { return pick(3u) + pick2(5.0, 6); }
float call_273() { return pick(float2(1.0)) + pick2(7, 8); }
float call_274() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_275() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_276() { return pick(1.0) + pick2(1.0, 2.0); }
float call_277() { return pick(2) + pick2(3, 4.0); }
float call_278() { return pick(3u) + pick2(5.0, 6); }
float call_279() { return pick(float2(1.0)) + pick2(7, 8); }
float call_280() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_281() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_282() { return pick(1.0) + pick2(1.0, 2.0); }
float call_283() { return pick(2) + pick2(3, 4.0); }
float call_284() { return pick(3u) + pick2(5.0, 6); }
float call_285() { return pick(float2(1.0)) + pick2(7, 8); }
float call_286() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_287() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_288() { return pick(1.0) + pick2(1.0, 2.0); }
float call_289() { return pick(2) + pick2(3, 4.0); }
float call_290() { return pick(3u) + pick2(5.0, 6); }
float call_291() { return pick(float2(1.0)) + pick2(7, 8); }
float call_292() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_293() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_294() { return pick(1.0) + pick2(1.0, 2.0); }
float call_295() { return pick(2) + pick2(3, 4.0); }
float call_296() { return pick(3u) + pick2(5.0, 6); }
float call_297() { return pick(float2(1.0)) + pick2(7, 8); }
float call_298() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_299() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_300() { return pick(1.0) + pick2(1.0, 2.0); }
float call_301() { return pick(2) + pick2(3, 4.0); }
float call_302() { return pick(3u) + pick2(5.0, 6); }
float call_303() { return pick(float2(1.0)) + pick2(7, 8); }
float call_304() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_305() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_306() { return pick(1.0) + pick2(1.0, 2.0); }
float call_307() { return pick(2) + pick2(3, 4.0); }
float call_308() { return pick(3u) + pick2(5.0, 6); }
float call_309() { return pick(float2(1.0)) + pick2(7, 8); }
float call_310() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_311() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_312() { return pick(1.0) + pick2(1.0, 2.0); }
float call_313() { return pick(2) + pick2(3, 4.0); }
float call_314() { return pick(3u) + pick2(5.0, 6); }
float call_315() { return pick(float2(1.0)) + pick2(7, 8); }
float call_316() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_317() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_318() { return pick(1.0) + pick2(1.0, 2.0); }
float call_319() { return pick(2) + pick2(3, 4.0); }
float call_320() { return pick(3u) + pick2(5.0, 6); }
float call_321() { return pick(float2(1.0)) + pick2(7, 8); }
float call_322() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_323() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_324() { return pick(1.0) + pick2(1.0, 2.0); }
float call_325() { return pick(2) + pick2(3, 4.0); }
float call_326() { return pick(3u) + pick2(5.0, 6); }
float call_327() { return pick(float2(1.0)) + pick2(7, 8); }
float call_328() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_329() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_330() { return pick(1.0) + pick2(1.0, 2.0); }
float call_331() { return pick(2) + pick2(3, 4.0); }
float call_332() { return pick(3u) + pick2(5.0, 6); }
float call_333() { return pick(float2(1.0)) + pick2(7, 8); }
float call_334() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_335() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_336() { return pick(1.0) + pick2(1.0, 2.0); }
float call_337() { return pick(2) + pick2(3, 4.0); }
float call_338() { return pick(3u) + pick2(5.0, 6); }
float call_339() { return pick(float2(1.0)) + pick2(7, 8); }
float call_340() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_341() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_342() { return pick(1.0) + pick2(1.0, 2.0); }
float call_343() { return pick(2) + pick2(3, 4.0); }
float call_344() { return pick(3u) + pick2(5.0, 6); }
float call_345() { return pick(float2(1.0)) + pick2(7, 8); }
float call_346() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_347() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_348() { return pick(1.0) + pick2(1.0, 2.0); }
float call_349() { return pick(2) + pick2(3, 4.0); }
float call_350() { return pick(3u) + pick2(5.0, 6); }
float call_351() { return pick(float2(1.0)) + pick2(7, 8); }
float call_352() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_353() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_354() { return pick(1.0) + pick2(1.0, 2.0); }
float call_355() { return pick(2) + pick2(3, 4.0); }
float call_356() { return pick(3u) + pick2(5.0, 6); }
float call_357() { return pick(float2(1.0)) + pick2(7, 8); }
float call_358() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_359() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_360() { return pick(1.0) + pick2(1.0, 2.0); }
float call_361() { return pick(2) + pick2(3, 4.0); }
float call_362() { return pick(3u) + pick2(5.0, 6); }
float call_363() { return pick(float2(1.0)) + pick2(7, 8); }
float call_364() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_365() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_366() { return pick(1.0) + pick2(1.0, 2.0); }
float call_367() { return pick(2) + pick2(3, 4.0); }
float call_368() { return pick(3u) + pick2(5.0, 6); }
float call_369() { return pick(float2(1.0)) + pick2(7, 8); }
float call_370() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_371() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_372() { return pick(1.0) + pick2(1.0, 2.0); }
float call_373() { return pick(2) + pick2(3, 4.0); }
float call_374() { return pick(3u) + pick2(5.0, 6); }
float call_375() { return pick(float2(1.0)) + pick2(7, 8); }
float call_376() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_377() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_378() { return pick(1.0) + pick2(1.0, 2.0); }
float call_379() { return pick(2) + pick2(3, 4.0); }
float call_380() { return pick(3u) + pick2(5.0, 6); }
float call_381() { return pick(float2(1.0)) + pick2(7, 8); }
float call_382() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_383() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_384() { return pick(1.0) + pick2(1.0, 2.0); }
float call_385() { return pick(2) + pick2(3, 4.0); }
float call_386() { return pick(3u) + pick2(5.0, 6); }
float call_387() { return pick(float2(1.0)) + pick2(7, 8); }
float call_388() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_389() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_390() { return pick(1.0) + pick2(1.0, 2.0); }
float call_391() { return pick(2) + pick2(3, 4.0); }
float call_392() { return pick(3u) + pick2(5.0, 6); }
float call_393() { return pick(float2(1.0)) + pick2(7, 8); }
float call_394() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_395() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_396() { return pick(1.0) + pick2(1.0, 2.0); }
float call_397() { return pick(2) + pick2(3, 4.0); }
float call_398() { return pick(3u) + pick2(5.0, 6); }
float call_399() { return pick(float2(1.0)) + pick2(7, 8); }
float call_400() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_401() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_402() { return pick(1.0) + pick2(1.0, 2.0); }
float call_403() { return pick(2) + pick2(3, 4.0); }
float call_404() { return pick(3u) + pick2(5.0, 6); }
float call_405() { return pick(float2(1.0)) + pick2(7, 8); }
float call_406() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_407() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_408() { return pick(1.0) + pick2(1.0, 2.0); }
float call_409() { return pick(2) + pick2(3, 4.0); }
float call_410() { return pick(3u) + pick2(5.0, 6); }
float call_411() { return pick(float2(1.0)) + pick2(7, 8); }
float call_412() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_413() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_414() { return pick(1.0) + pick2(1.0, 2.0); }
float call_415() { return pick(2) + pick2(3, 4.0); }
float call_416() { return pick(3u) + pick2(5.0, 6); }
float call_417() { return pick(float2(1.0)) + pick2(7, 8); }
float call_418() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_419() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_420() { return pick(1.0) + pick2(1.0, 2.0); }
float call_421() { return pick(2) + pick2(3, 4.0); }
float call_422() { return pick(3u) + pick2(5.0, 6); }
float call_423() { return pick(float2(1.0)) + pick2(7, 8); }
float call_424() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_425() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_426() { return pick(1.0) + pick2(1.0, 2.0); }
float call_427() { return pick(2) + pick2(3, 4.0); }
float call_428() { return pick(3u) + pick2(5.0, 6); }
float call_429() { return pick(float2(1.0)) + pick2(7, 8); }
float call_430() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_431() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_432() { return pick(1.0) + pick2(1.0, 2.0); }
float call_433() { return pick(2) + pick2(3, 4.0); }
float call_434() { return pick(3u) + pick2(5.0, 6); }
float call_435() { return pick(float2(1.0)) + pick2(7, 8); }
float call_436() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_437() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_438() { return pick(1.0) + pick2(1.0, 2.0); }
float call_439() { return pick(2) + pick2(3, 4.0); }
float call_440() { return pick(3u) + pick2(5.0, 6); }
float call_441() { return pick(float2(1.0)) + pick2(7, 8); }
float call_442() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_443() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_444() { return pick(1.0) + pick2(1.0, 2.0); }
float call_445() { return pick(2) + pick2(3, 4.0); }
float call_446() { return pick(3u) + pick2(5.0, 6); }
float call_447() { return pick(float2(1.0)) + pick2(7, 8); }
float call_448() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_449() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_450() { return pick(1.0) + pick2(1.0, 2.0); }
float call_451() { return pick(2) + pick2(3, 4.0); }
float call_452() { return pick(3u) + pick2(5.0, 6); }
float call_453() { return pick(float2(1.0)) + pick2(7, 8); }
float call_454() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_455() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_456() { return pick(1.0) + pick2(1.0, 2.0); }
float call_457() { return pick(2) + pick2(3, 4.0); }
float call_458() { return pick(3u) + pick2(5.0, 6); }
float call_459() { return pick(float2(1.0)) + pick2(7, 8); }
float call_460() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_461() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_462() { return pick(1.0) + pick2(1.0, 2.0); }
float call_463() { return pick(2) + pick2(3, 4.0); }
float call_464() { return pick(3u) + pick2(5.0, 6); }
float call_465() { return pick(float2(1.0)) + pick2(7, 8); }
float call_466() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_467() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_468() { return pick(1.0) + pick2(1.0, 2.0); }
float call_469() { return pick(2) + pick2(3, 4.0); }
float call_470() { return pick(3u) + pick2(5.0, 6); }
float call_471() { return pick(float2(1.0)) + pick2(7, 8); }
float call_472() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_473() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_474() { return pick(1.0) + pick2(1.0, 2.0); }
float call_475() { return pick(2) + pick2(3, 4.0); }
float call_476() { return pick(3u) + pick2(5.0, 6); }
float call_477() { return pick(float2(1.0)) + pick2(7, 8); }
float call_478() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_479() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_480() { return pick(1.0) + pick2(1.0, 2.0); }
float call_481() { return pick(2) + pick2(3, 4.0); }
float call_482() { return pick(3u) + pick2(5.0, 6); }
float call_483() { return pick(float2(1.0)) + pick2(7, 8); }
float call_484() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_485() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_486() { return pick(1.0) + pick2(1.0, 2.0); }
float call_487() { return pick(2) + pick2(3, 4.0); }
float call_488() { return pick(3u) + pick2(5.0, 6); }
float call_489() { return pick(float2(1.0)) + pick2(7, 8); }
float call_490() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_491() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_492() { return pick(1.0) + pick2(1.0, 2.0); }
float call_493() { return pick(2) + pick2(3, 4.0); }
float call_494() { return pick(3u) + pick2(5.0, 6); }
float call_495() { return pick(float2(1.0)) + pick2(7, 8); }
float call_496() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_497() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_498() { return pick(1.0) + pick2(1.0, 2.0); }
float call_499() { return pick(2) + pick2(3, 4.0); }
float call_500() { return pick(3u) + pick2(5.0, 6); }
float call_501() { return pick(float2(1.0)) + pick2(7, 8); }
float call_502() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_503() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_504() { return pick(1.0) + pick2(1.0, 2.0); }
float call_505() { return pick(2) + pick2(3, 4.0); }
float call_506() { return pick(3u) + pick2(5.0, 6); }
float call_507() { return pick(float2(1.0)) + pick2(7, 8); }
float call_508() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_509() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_510() { return pick(1.0) + pick2(1.0, 2.0); }
float call_511() { return pick(2) + pick2(3, 4.0); }
float call_512() { return pick(3u) + pick2(5.0, 6); }
float call_513() { return pick(float2(1.0)) + pick2(7, 8); }
float call_514() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_515() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_516() { return pick(1.0) + pick2(1.0, 2.0); }
float call_517() { return pick(2) + pick2(3, 4.0); }
float call_518() { return pick(3u) + pick2(5.0, 6); }
float call_519() { return pick(float2(1.0)) + pick2(7, 8); }
float call_520() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_521() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_522() { return pick(1.0) + pick2(1.0, 2.0); }
float call_523() { return pick(2) + pick2(3, 4.0); }
float call_524() { return pick(3u) + pick2(5.0, 6); }
float call_525() { return pick(float2(1.0)) + pick2(7, 8); }
float call_526() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_527() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_528() { return pick(1.0) + pick2(1.0, 2.0); }
float call_529() { return pick(2) + pick2(3, 4.0); }
float call_530() { return pick(3u) + pick2(5.0, 6); }
float call_531() { return pick(float2(1.0)) + pick2(7, 8); }
float call_532() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_533() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_534() { return pick(1.0) + pick2(1.0, 2.0); }
float call_535() { return pick(2) + pick2(3, 4.0); }
float call_536() { return pick(3u) + pick2(5.0, 6); }
float call_537() { return pick(float2(1.0)) + pick2(7, 8); }
float call_538() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_539() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_540() { return pick(1.0) + pick2(1.0, 2.0); }
float call_541() { return pick(2) + pick2(3, 4.0); }
float call_542() { return pick(3u) + pick2(5.0, 6); }
float call_543() { return pick(float2(1.0)) + pick2(7, 8); }
float call_544() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_545() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_546() { return pick(1.0) + pick2(1.0, 2.0); }
float call_547() { return pick(2) + pick2(3, 4.0); }
float call_548() { return pick(3u) + pick2(5.0, 6); }
float call_549() { return pick(float2(1.0)) + pick2(7, 8); }
float call_550() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_551() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_552() { return pick(1.0) + pick2(1.0, 2.0); }
float call_553() { return pick(2) + pick2(3, 4.0); }
float call_554() { return pick(3u) + pick2(5.0, 6); }
float call_555() { return pick(float2(1.0)) + pick2(7, 8); }
float call_556() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_557() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_558() { return pick(1.0) + pick2(1.0, 2.0); }
float call_559() { return pick(2) + pick2(3, 4.0); }
float call_560() { return pick(3u) + pick2(5.0, 6); }
float call_561() { return pick(float2(1.0)) + pick2(7, 8); }
float call_562() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_563() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_564() { return pick(1.0) + pick2(1.0, 2.0); }
float call_565() { return pick(2) + pick2(3, 4.0); }
float call_566() { return pick(3u) + pick2(5.0, 6); }
float call_567() { return pick(float2(1.0)) + pick2(7, 8); }
float call_568() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_569() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_570() { return pick(1.0) + pick2(1.0, 2.0); }
float call_571() { return pick(2) + pick2(3, 4.0); }
float call_572() { return pick(3u) + pick2(5.0, 6); }
float call_573() { return pick(float2(1.0)) + pick2(7, 8); }
float call_574() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_575() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_576() { return pick(1.0) + pick2(1.0, 2.0); }
float call_577() { return pick(2) + pick2(3, 4.0); }
float call_578() { return pick(3u) + pick2(5.0, 6); }
float call_579() { return pick(float2(1.0)) + pick2(7, 8); }
float call_580() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_581() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_582() { return pick(1.0) + pick2(1.0, 2.0); }
float call_583() { return pick(2) + pick2(3, 4.0); }
float call_584() { return pick(3u) + pick2(5.0, 6); }
float call_585() { return pick(float2(1.0)) + pick2(7, 8); }
float call_586() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_587() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_588() { return pick(1.0) + pick2(1.0, 2.0); }
float call_589() { return pick(2) + pick2(3, 4.0); }
float call_590() { return pick(3u) + pick2(5.0, 6); }
float call_591() { return pick(float2(1.0)) + pick2(7, 8); }
float call_592() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_593() { return pick(float4(1.0)) + pick2(11.0, 12u); }
float call_594() { return pick(1.0) + pick2(1.0, 2.0); }
float call_595() { return pick(2) + pick2(3, 4.0); }
float call_596() { return pick(3u) + pick2(5.0, 6); }
float call_597() { return pick(float2(1.0)) + pick2(7, 8); }
float call_598() { return pick(float3(1.0)) + pick2(9u, 10.0); }
float call_599() { return pick(float4(1.0)) + pick2(11.0, 12u); }
[shader("compute")]
[numthreads(1,1,1)]
void computeMain()
{
float acc = 0.0;
acc += call_0();
acc += call_1();
acc += call_2();
acc += call_3();
acc += call_4();
acc += call_5();
acc += call_6();
acc += call_7();
acc += call_8();
acc += call_9();
acc += call_10();
acc += call_11();
acc += call_12();
acc += call_13();
acc += call_14();
acc += call_15();
acc += call_16();
acc += call_17();
acc += call_18();
acc += call_19();
acc += call_20();
acc += call_21();
acc += call_22();
acc += call_23();
acc += call_24();
acc += call_25();
acc += call_26();
acc += call_27();
acc += call_28();
acc += call_29();
acc += call_30();
acc += call_31();
acc += call_32();
acc += call_33();
acc += call_34();
acc += call_35();
acc += call_36();
acc += call_37();
acc += call_38();
acc += call_39();
acc += call_40();
acc += call_41();
acc += call_42();
acc += call_43();
acc += call_44();
acc += call_45();
acc += call_46();
acc += call_47();
acc += call_48();
acc += call_49();
acc += call_50();
acc += call_51();
acc += call_52();
acc += call_53();
acc += call_54();
acc += call_55();
acc += call_56();
acc += call_57();
acc += call_58();
acc += call_59();
acc += call_60();
acc += call_61();
acc += call_62();
acc += call_63();
outBuf[0] = acc;
}