@@ -174,9 +174,9 @@ static ExprId GetFloat(LowLevelILFunction& il, InstructionOperand& operand, int
174174 case 2 :
175175 return il.FloatConstRaw (2 , operand.immediate );
176176 case 4 :
177- return il.FloatConstSingle (*( float *)&( operand.immediate ));
177+ return il.FloatConstSingle (std::bit_cast< float >( static_cast < uint32_t >( operand.immediate ) ));
178178 case 8 :
179- return il.FloatConstDouble (*( float *)& (operand.immediate ));
179+ return il.FloatConstDouble (std::bit_cast< double > (operand.immediate ));
180180 default :
181181 break ;
182182 }
@@ -851,7 +851,7 @@ static void LoadStoreVector(
851851 for (int i = 0 ; i < regs_n; ++i)
852852 {
853853 int reg_spec_base = (oper0.reg [0 ] + i - REG_V0) * (16 / arrspec_size) + lane;
854- Register reg;
854+ Register reg = REG_NONE ;
855855 switch (arrspec_size)
856856 {
857857 case 1 :
@@ -1343,7 +1343,7 @@ bool GetLowLevelILForInstruction(
13431343 case ENC_ADD_Z_ZZ_:
13441344 if (!preferIntrinsics ())
13451345 il.AddInstruction (il.Unimplemented ());
1346- return true ;
1346+ return true ;
13471347 default : break ;
13481348 }
13491349 case ARM64_ADDS:
@@ -1372,7 +1372,7 @@ bool GetLowLevelILForInstruction(
13721372 case ENC_ANDS_P_P_PP_Z:
13731373 if (!preferIntrinsics ())
13741374 il.AddInstruction (il.Unimplemented ());
1375- return true ;
1375+ return true ;
13761376 default : break ;
13771377 }
13781378 il.AddInstruction (
@@ -1387,7 +1387,7 @@ bool GetLowLevelILForInstruction(
13871387 case ENC_ADR_Z_AZ_D_U32_SCALED:
13881388 if (!preferIntrinsics ())
13891389 il.AddInstruction (il.Unimplemented ());
1390- return true ;
1390+ return true ;
13911391 default : break ;
13921392 }
13931393 case ARM64_ADRP:
@@ -1403,7 +1403,7 @@ bool GetLowLevelILForInstruction(
14031403 case ENC_ASR_Z_ZW_:
14041404 if (!preferIntrinsics ())
14051405 il.AddInstruction (il.Unimplemented ());
1406- return true ;
1406+ return true ;
14071407 default : break ;
14081408 }
14091409 il.AddInstruction (ILSETREG_O (operand1, il.ArithShiftRight (REGSZ_O (operand2), ILREG_O (operand2),
@@ -1415,7 +1415,7 @@ bool GetLowLevelILForInstruction(
14151415 case ENC_AESD_Z_ZZ_:
14161416 if (!preferIntrinsics ())
14171417 il.AddInstruction (il.Unimplemented ());
1418- return true ;
1418+ return true ;
14191419 default : break ;
14201420 }
14211421 il.AddInstruction (il.Intrinsic ({RegisterOrFlag::Register (REG_O (operand1))}, ARM64_INTRIN_AESD,
@@ -1427,8 +1427,8 @@ bool GetLowLevelILForInstruction(
14271427 case ENC_AESE_Z_ZZ_:
14281428 if (!preferIntrinsics ())
14291429 il.AddInstruction (il.Unimplemented ());
1430- return true ;
1431- default : break ;
1430+ return true ;
1431+ default : break ;
14321432 }
14331433 il.AddInstruction (il.Intrinsic ({RegisterOrFlag::Register (REG_O (operand1))}, ARM64_INTRIN_AESE,
14341434 {ILREG_O (operand1), ILREG_O (operand2)}));
@@ -1439,8 +1439,8 @@ bool GetLowLevelILForInstruction(
14391439 case ENC_AESIMC_Z_Z_:
14401440 if (!preferIntrinsics ())
14411441 il.AddInstruction (il.Unimplemented ());
1442- return true ;
1443- default : break ;
1442+ return true ;
1443+ default : break ;
14441444 }
14451445 il.AddInstruction (il.Intrinsic ({RegisterOrFlag::Register (REG_O (operand1))}, ARM64_INTRIN_AESIMC,
14461446 {ILREG_O (operand1), ILREG_O (operand2)}));
@@ -1451,8 +1451,8 @@ bool GetLowLevelILForInstruction(
14511451 case ENC_AESMC_Z_Z_:
14521452 if (!preferIntrinsics ())
14531453 il.AddInstruction (il.Unimplemented ());
1454- return true ;
1455- default : break ;
1454+ return true ;
1455+ default : break ;
14561456 }
14571457 il.AddInstruction (il.Intrinsic ({RegisterOrFlag::Register (REG_O (operand1))}, ARM64_INTRIN_AESMC,
14581458 {ILREG_O (operand1), ILREG_O (operand2)}));
@@ -1571,7 +1571,7 @@ bool GetLowLevelILForInstruction(
15711571 case ENC_BICS_P_P_PP_Z:
15721572 if (!preferIntrinsics ())
15731573 il.AddInstruction (il.Unimplemented ());
1574- return true ;
1574+ return true ;
15751575 case ENC_BIC_ASIMDIMM_L_HL:
15761576 case ENC_BIC_ASIMDIMM_L_SL:
15771577 il.AddInstruction (ILSETREG_O (operand1,
@@ -2962,9 +2962,9 @@ bool GetLowLevelILForInstruction(
29622962 case ENC_NEG_ASIMDMISC_R:
29632963 case ENC_NEG_Z_P_Z_M:
29642964 case ENC_NEG_Z_P_Z_Z:
2965- if (!preferIntrinsics ())
2966- il.AddInstruction (il.Unimplemented ());
2967- return true ;
2965+ if (!preferIntrinsics ())
2966+ il.AddInstruction (il.Unimplemented ());
2967+ return true ;
29682968 default : break ;
29692969 }
29702970 case ARM64_NEGS:
@@ -3098,8 +3098,8 @@ bool GetLowLevelILForInstruction(
30983098 {
30993099 case ENC_ORN_Z_ZI__ORR_Z_ZI_:
31003100 case ENC_ORN_P_P_PP_Z:
3101- if (!preferIntrinsics ())
3102- il.AddInstruction (il.Unimplemented ());
3101+ if (!preferIntrinsics ())
3102+ il.AddInstruction (il.Unimplemented ());
31033103 return true ;
31043104 default : break ;
31053105 }
@@ -3588,11 +3588,11 @@ bool GetLowLevelILForInstruction(
35883588 case ARM64_STR:
35893589 switch (instr.encoding )
35903590 {
3591- case ENC_STR_P_BI_:
3592- case ENC_STR_Z_BI_:
3593- case ENC_STR_ZA_RI_:
3594- if (!preferIntrinsics ())
3595- il.AddInstruction (il.Unimplemented ());
3591+ case ENC_STR_P_BI_:
3592+ case ENC_STR_Z_BI_:
3593+ case ENC_STR_ZA_RI_:
3594+ if (!preferIntrinsics ())
3595+ il.AddInstruction (il.Unimplemented ());
35963596 return true ;
35973597 default : break ;
35983598 }
@@ -3619,9 +3619,9 @@ bool GetLowLevelILForInstruction(
36193619 case ENC_SUB_Z_P_ZZ_:
36203620 case ENC_SUB_Z_ZI_:
36213621 case ENC_SUB_Z_ZZ_:
3622- if (!preferIntrinsics ())
3623- il.AddInstruction (il.Unimplemented ());
3624- return true ;
3622+ if (!preferIntrinsics ())
3623+ il.AddInstruction (il.Unimplemented ());
3624+ return true ;
36253625 default : break ;
36263626 }
36273627 case ARM64_SUBS:
0 commit comments