• Ian Romanick's avatar
    intel/compiler: Treat b32csel as potentially producing a Boolean result for resolve analysis · 1c30d26d
    Ian Romanick authored
    If the 2nd and 3rd source are both Boolean values, we can potentially
    avoid a resolve by only resolving the result of the b32csel.
    
    No changes on any Gen6+ Intel platform.
    
    v2: Use ?: instead of cast from bool to unsigned.  Suggested by Caio.
    
    Iron Lake
    total instructions in shared programs: 8142729 -> 8142677 (<.01%)
    instructions in affected programs: 12890 -> 12838 (-0.40%)
    helped: 26
    HURT: 0
    helped stats (abs) min: 2 max: 2 x̄: 2.00 x̃: 2
    helped stats (rel) min: 0.25% max: 0.74% x̄: 0.45% x̃: 0.38%
    95% mean confidence interval for instructions value: -2.00 -2.00
    95% mean confidence interval for instructions %-change: -0.52% -0.39%
    Instructions are helped.
    
    total cycles in shared programs: 188549632 -> 188549394 (<.01%)
    cycles in affected programs: 60754 -> 60516 (-0.39%)
    helped: 25
    HURT: 1
    helped stats (abs) min: 2 max: 26 x̄: 9.92 x̃: 8
    helped stats (rel) min: 0.07% max: 2.23% x̄: 0.59% x̃: 0.27%
    HURT stats (abs)   min: 10 max: 10 x̄: 10.00 x̃: 10
    HURT stats (rel)   min: 0.70% max: 0.70% x̄: 0.70% x̃: 0.70%
    95% mean confidence interval for cycles value: -12.91 -5.40
    95% mean confidence interval for cycles %-change: -0.84% -0.23%
    Cycles are helped.
    
    GM45
    total instructions in shared programs: 5013119 -> 5013093 (<.01%)
    instructions in affected programs: 6764 -> 6738 (-0.38%)
    helped: 13
    HURT: 0
    helped stats (abs) min: 2 max: 2 x̄: 2.00 x̃: 2
    helped stats (rel) min: 0.24% max: 0.68% x̄: 0.43% x̃: 0.36%
    95% mean confidence interval for instructions value: -2.00 -2.00
    95% mean confidence interval for instructions %-change: -0.52% -0.34%
    Instructions are helped.
    
    total cycles in shared programs: 128977804 -> 128977700 (<.01%)
    cycles in affected programs: 37738 -> 37634 (-0.28%)
    helped: 13
    HURT: 0
    helped stats (abs) min: 8 max: 8 x̄: 8.00 x̃: 8
    helped stats (rel) min: 0.18% max: 0.46% x̄: 0.30% x̃: 0.26%
    95% mean confidence interval for cycles value: -8.00 -8.00
    95% mean confidence interval for cycles %-change: -0.36% -0.24%
    Cycles are helped.
    Reviewed-by: Caio Marcelo de Oliveira Filho's avatarCaio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
    Reviewed-by: Matt Turner's avatarMatt Turner <mattst88@gmail.com>
    1c30d26d
Name
Last commit
Last update
.gitlab-ci Loading commit data...
bin Loading commit data...
build-support Loading commit data...
docs Loading commit data...
doxygen Loading commit data...
include Loading commit data...
scons Loading commit data...
scripts Loading commit data...
src Loading commit data...
.dir-locals.el Loading commit data...
.editorconfig Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitlab-ci.yml Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
Android.common.mk Loading commit data...
Android.mk Loading commit data...
CleanSpec.mk Loading commit data...
README.rst Loading commit data...
REVIEWERS Loading commit data...
SConstruct Loading commit data...
VERSION Loading commit data...
appveyor.yml Loading commit data...
common.py Loading commit data...
meson.build Loading commit data...
meson_options.txt Loading commit data...