8264564: AArch64: use MOVI instead of FMOV to zero FP register

Reviewed-by: aph
This commit is contained in:
Nick Gasson 2021-04-06 02:44:05 +00:00
parent dc608fd0f3
commit 43d4a6f615
3 changed files with 5 additions and 5 deletions

View File

@ -2184,13 +2184,13 @@ public:
if (value)
fmov_imm(Vn, value, 0b00);
else
fmovs(Vn, zr);
movi(Vn, T2S, 0);
}
void fmovd(FloatRegister Vn, double value) {
if (value)
fmov_imm(Vn, value, 0b01);
else
fmovd(Vn, zr);
movi(Vn, T1D, 0);
}
// Floating-point rounding

View File

@ -5153,7 +5153,7 @@ address MacroAssembler::byte_array_inflate(Register src, Register dst, Register
assert_different_registers(src, dst, len, tmp4, rscratch1);
fmovd(vtmp1, zr);
fmovd(vtmp1, 0.0);
lsrw(tmp4, len, 3);
bind(after_init);
cbnzw(tmp4, big);

View File

@ -261,7 +261,7 @@ void TemplateTable::fconst(int value)
transition(vtos, ftos);
switch (value) {
case 0:
__ fmovs(v0, zr);
__ fmovs(v0, 0.0);
break;
case 1:
__ fmovs(v0, 1.0);
@ -280,7 +280,7 @@ void TemplateTable::dconst(int value)
transition(vtos, dtos);
switch (value) {
case 0:
__ fmovd(v0, zr);
__ fmovd(v0, 0.0);
break;
case 1:
__ fmovd(v0, 1.0);