Skip to content
  • Arcady Goldmints-Orlov's avatar
    broadcom/compiler: Skip bool_to_cond where possible · 9909fe6b
    Arcady Goldmints-Orlov authored
    
    
    This change keeps track of when a boolean temp is loaded into the flags
    by a comparison instruction and uses that information to skip emitting
    instructions to set the flags in ntq_emit_bool_to_cond when the flags
    already have the right contents.
    
    total instructions in shared programs: 11116502 -> 11112225 (-0.04%)
    instructions in affected programs: 631691 -> 627414 (-0.68%)
    helped: 1591
    HURT: 754
    helped stats (abs) min: 1 max: 94 x̄: 4.14 x̃: 3
    helped stats (rel) min: 0.11% max: 13.46% x̄: 2.10% x̃: 1.58%
    HURT stats (abs)   min: 1 max: 19 x̄: 3.07 x̃: 2
    HURT stats (rel)   min: 0.13% max: 19.67% x̄: 1.88% x̃: 1.15%
    95% mean confidence interval for instructions value: -2.02 -1.63
    95% mean confidence interval for instructions %-change: -0.94% -0.71%
    Instructions are helped.
    
    total uniforms in shared programs: 3281555 -> 3281513 (<.01%)
    uniforms in affected programs: 1754 -> 1712 (-2.39%)
    helped: 10
    HURT: 5
    helped stats (abs) min: 1 max: 19 x̄: 7.90 x̃: 5
    helped stats (rel) min: 0.56% max: 11.11% x̄: 7.37% x̃: 11.05%
    HURT stats (abs)   min: 1 max: 15 x̄: 7.40 x̃: 3
    HURT stats (rel)   min: 0.64% max: 9.55% x̄: 5.31% x̃: 3.41%
    95% mean confidence interval for uniforms value: -8.57 2.97
    95% mean confidence interval for uniforms %-change: -7.35% 1.07%
    Inconclusive result (value mean confidence interval includes 0).
    
    total max-temps in shared programs: 1758419 -> 1758174 (-0.01%)
    max-temps in affected programs: 7006 -> 6761 (-3.50%)
    helped: 290
    HURT: 14
    helped stats (abs) min: 1 max: 8 x̄: 1.13 x̃: 1
    helped stats (rel) min: 0.79% max: 22.86% x̄: 6.61% x̃: 4.88%
    HURT stats (abs)   min: 1 max: 13 x̄: 6.00 x̃: 3
    HURT stats (rel)   min: 1.54% max: 54.17% x̄: 23.99% x̃: 9.12%
    95% mean confidence interval for max-temps value: -1.03 -0.58
    95% mean confidence interval for max-temps %-change: -6.24% -4.16%
    Max-temps are helped.
    
    total sfu-stalls in shared programs: 23676 -> 23610 (-0.28%)
    sfu-stalls in affected programs: 1578 -> 1512 (-4.18%)
    helped: 257
    HURT: 252
    helped stats (abs) min: 1 max: 3 x̄: 1.37 x̃: 1
    helped stats (rel) min: 11.11% max: 100.00% x̄: 46.70% x̃: 40.00%
    HURT stats (abs)   min: 1 max: 2 x̄: 1.14 x̃: 1
    HURT stats (rel)   min: 0.00% max: 200.00% x̄: 41.65% x̃: 25.00%
    95% mean confidence interval for sfu-stalls value: -0.25 -0.01
    95% mean confidence interval for sfu-stalls %-change: -8.24% 2.33%
    Inconclusive result (%-change mean confidence interval includes 0).
    
    total inst-and-stalls in shared programs: 11140178 -> 11135835 (-0.04%)
    inst-and-stalls in affected programs: 633972 -> 629629 (-0.69%)
    helped: 1581
    HURT: 755
    helped stats (abs) min: 1 max: 94 x̄: 4.26 x̃: 3
    helped stats (rel) min: 0.11% max: 13.46% x̄: 2.12% x̃: 1.59%
    HURT stats (abs)   min: 1 max: 17 x̄: 3.17 x̃: 2
    HURT stats (rel)   min: 0.05% max: 19.67% x̄: 1.93% x̃: 1.20%
    95% mean confidence interval for inst-and-stalls value: -2.06 -1.66
    95% mean confidence interval for inst-and-stalls %-change: -0.93% -0.70%
    Inst-and-stalls are helped.
    
    Reviewed-by: default avatarIago Toral Quioroga <itoral@igalia.com>
    Part-of: <!8933>
    9909fe6b