< prev index next >

src/cpu/aarch64/vm/aarch64.ad

Print this page
rev 10580 : fix
rev 10581 : more
rev 10582 : more
rev 10860 : 8154537: AArch64: some integer rotate instructions are never emitted
Summary: some integer rotate rules in ad file can't be matched
Reviewed-by:

*** 12076,12100 **** expand %{ rorL_rReg(dst, src, shift, cr); %} %} ! instruct rorI_rReg_Var_C_32(iRegLNoSp dst, iRegL src, iRegI shift, immI_32 c_32, rFlagsReg cr) %{ match(Set dst (OrI (URShiftI src shift) (LShiftI src (SubI c_32 shift)))); expand %{ ! rorL_rReg(dst, src, shift, cr); %} %} ! instruct rorI_rReg_Var_C0(iRegLNoSp dst, iRegL src, iRegI shift, immI0 c0, rFlagsReg cr) %{ match(Set dst (OrI (URShiftI src shift) (LShiftI src (SubI c0 shift)))); expand %{ ! rorL_rReg(dst, src, shift, cr); %} %} // Add/subtract (extended) --- 12076,12100 ---- expand %{ rorL_rReg(dst, src, shift, cr); %} %} ! instruct rorI_rReg_Var_C_32(iRegINoSp dst, iRegI src, iRegI shift, immI_32 c_32, rFlagsReg cr) %{ match(Set dst (OrI (URShiftI src shift) (LShiftI src (SubI c_32 shift)))); expand %{ ! rorI_rReg(dst, src, shift, cr); %} %} ! instruct rorI_rReg_Var_C0(iRegINoSp dst, iRegI src, iRegI shift, immI0 c0, rFlagsReg cr) %{ match(Set dst (OrI (URShiftI src shift) (LShiftI src (SubI c0 shift)))); expand %{ ! rorI_rReg(dst, src, shift, cr); %} %} // Add/subtract (extended)
< prev index next >