MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / GetFloat

Function GetFloat

arch/arm64/il.cpp:168–191  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

166}
167
168static ExprId GetFloat(LowLevelILFunction& il, InstructionOperand& operand, int float_sz)
169{
170 if (operand.operandClass == FIMM32)
171 {
172 switch (float_sz)
173 {
174 case 2:
175 return il.FloatConstRaw(2, operand.immediate);
176 case 4:
177 return il.FloatConstSingle(*(float*)&(operand.immediate));
178 case 8:
179 return il.FloatConstDouble(*(float*)&(operand.immediate));
180 default:
181 break;
182 }
183 }
184 else if (operand.operandClass == REG)
185 {
186 return il.FloatConvert(
187 float_sz, ExtractRegister(il, operand, 0, REGSZ_O(operand), false, REGSZ_O(operand)));
188 }
189
190 return il.Unimplemented();
191}
192
193static ExprId GetShiftedRegister(
194 LowLevelILFunction& il, InstructionOperand& operand, size_t regNum, size_t resultSize)

Callers 2

ReadILOperandFunction · 0.70

Calls 6

ExtractRegisterFunction · 0.85
FloatConstRawMethod · 0.45
FloatConstSingleMethod · 0.45
FloatConstDoubleMethod · 0.45
FloatConvertMethod · 0.45
UnimplementedMethod · 0.45

Tested by

no test coverage detected