mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 12:50:10 +01:00
nv50/ir: Extend ImmediateValue::applyLog2 to 64-bit integers
Signed-off-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
03f592a164
commit
f0e80e123c
1 changed files with 10 additions and 1 deletions
|
|
@ -423,7 +423,10 @@ ImmediateValue::isNegative() const
|
|||
bool
|
||||
ImmediateValue::isPow2() const
|
||||
{
|
||||
return util_is_power_of_two_or_zero(reg.data.u32);
|
||||
if (reg.type == TYPE_U64 || reg.type == TYPE_S64)
|
||||
return util_is_power_of_two_or_zero64(reg.data.u64);
|
||||
else
|
||||
return util_is_power_of_two_or_zero(reg.data.u32);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -440,6 +443,12 @@ ImmediateValue::applyLog2()
|
|||
case TYPE_U32:
|
||||
reg.data.u32 = util_logbase2(reg.data.u32);
|
||||
break;
|
||||
case TYPE_S64:
|
||||
assert(!this->isNegative());
|
||||
// fall through
|
||||
case TYPE_U64:
|
||||
reg.data.u64 = util_logbase2_64(reg.data.u64);
|
||||
break;
|
||||
case TYPE_F32:
|
||||
reg.data.f32 = log2f(reg.data.f32);
|
||||
break;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue