<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Add FP64 support to the i965 shader backends"
href="https://bugs.freedesktop.org/show_bug.cgi?id=92760#c33">Comment # 33</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Add FP64 support to the i965 shader backends"
href="https://bugs.freedesktop.org/show_bug.cgi?id=92760">bug 92760</a>
from <span class="vcard"><a class="email" href="mailto:cwabbott0@gmail.com" title="Connor Abbott <cwabbott0@gmail.com>"> <span class="fn">Connor Abbott</span></a>
</span></b>
<pre>(In reply to Samuel Iglesias from <a href="show_bug.cgi?id=92760#c32">comment #32</a>)
<span class="quote">> I found an issue related to the opt_algebraic passes after we lowered lrp
> instruction when it has double-based types as arguments (lrp instruction
> does not support doubles in BDW).
>
> Currently, the lowering of double ops run as part the optimization loop in
> nir_optimize(). In that lowering function, I converted the lrp to its
> equivalent mathematical function when we have doubles as arguments... which
> is reverted by opt_algebraic() in next iteration of the optimization loop :-)
>
> My idea is: remove my lrp's lowering pass, add a new flag in
> nir_shader_compiler_options called 'lower_lrp_doubles' and modify
> nir_opt_algebraic.py to run its lrp's lowering when the arguments are
> doubles, if that flag is enabled. Any driver that does not support lrp with
> double arguments, just enable that nir option in its configuration.
>
> I would like to know your opinion about this solution before implementing
> it. Do you have other solutions in mind?
>
> Thanks!</span >
That seems like a fine solution -- we already do similar things in a number of
different places in opt_algebraic. Just keep in mind that you'll have to
disable the lrp optimization in opt_algebraic for doubles when that option is
enabled to avoid running into the same problem.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>