use of org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp in project graal by oracle.
the class AArch64ArithmeticLIRGenerator method emitBitScanReverse.
@Override
public Value emitBitScanReverse(Value value) {
Variable result = getLIRGen().newVariable(LIRKind.combine(value).changeType(AArch64Kind.DWORD));
getLIRGen().append(new AArch64BitManipulationOp(BSR, result, getLIRGen().asAllocatable(value)));
return result;
}
use of org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp in project graal by oracle.
the class AArch64ArithmeticLIRGenerator method emitCountLeadingZeros.
@Override
public Value emitCountLeadingZeros(Value value) {
Variable result = getLIRGen().newVariable(LIRKind.combine(value).changeType(AArch64Kind.DWORD));
getLIRGen().append(new AArch64BitManipulationOp(CLZ, result, getLIRGen().asAllocatable(value)));
return result;
}
use of org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp in project graal by oracle.
the class AArch64ArithmeticLIRGenerator method emitCountTrailingZeros.
@Override
public Value emitCountTrailingZeros(Value value) {
Variable result = getLIRGen().newVariable(LIRKind.combine(value).changeType(AArch64Kind.DWORD));
getLIRGen().append(new AArch64BitManipulationOp(CTZ, result, getLIRGen().asAllocatable(value)));
return result;
}
Aggregations