Displaying 2 results from an estimated 2 matches for "isdisp8".
Did you mean:
disp8
2013 Dec 12
3
[LLVMdev] [RFC PATCH 1/2] x86: Fix ModR/M byte output in 16-bit addressing mode
..."invalid scale for 16-bit memory reference");
+
+ if (IndexReg16 & 2)
+ RMfield = (RMfield & 1) | ((7 - IndexReg16) << 1);
+ else
+ RMfield = (IndexReg16 & 1) | ((7 - RMfield) << 1);
+ }
+
+ if (Disp.isImm() && isDisp8(Disp.getImm())) {
+ // Use [REG]+disp8 form if we can, and for [BP] which cannot be encoded.
+ if (BaseRegNo == N86::EBP || Disp.getImm() != 0) {
+ EmitByte(ModRMByte(1, RegOpcodeField, RMfield), CurByte, OS);
+ EmitImmediate(Disp, MI.getLoc(), 1, FK_Data_1, CurByte,...
2013 Dec 16
0
[LLVMdev] [RFC PATCH 1/2] x86: Fix ModR/M byte output in 16-bit addressing mode
...ry reference");
> +
> + if (IndexReg16 & 2)
> + RMfield = (RMfield & 1) | ((7 - IndexReg16) << 1);
> + else
> + RMfield = (IndexReg16 & 1) | ((7 - RMfield) << 1);
> + }
> +
> + if (Disp.isImm() && isDisp8(Disp.getImm())) {
> + // Use [REG]+disp8 form if we can, and for [BP] which cannot be
> encoded.
> + if (BaseRegNo == N86::EBP || Disp.getImm() != 0) {
> + EmitByte(ModRMByte(1, RegOpcodeField, RMfield), CurByte, OS);
> + EmitImmediate(Disp, MI.getLoc(...