search for: emitimmediate

Displaying 9 results from an estimated 9 matches for "emitimmediate".

2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...to; else { // If there is a remaining operand, it must be a trailing immediate. Emit it // according to the right size for the instruction. Some instructions // (SSE4a extrq and insertq) have two trailing immediates. while (CurOp != NumOps && NumOps - CurOp <= 2) { EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), X86II::getSizeOfImm(TSFlags), getImmFixupKind(TSFlags), CurByte, OS, Fixups); } here CurOp=2 !=NumOps=3 && 3-2<=2 so while condition is satisfied and it goes to emitimmediate which is wrong and there prints...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...erand, it must be a trailing immediate. >> Emit it >> // according to the right size for the instruction. Some instructions >> // (SSE4a extrq and insertq) have two trailing immediates. >> while (CurOp != NumOps && NumOps - CurOp <= 2) { >> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >> X86II::getSizeOfImm(TSFlags), >> getImmFixupKind(TSFlags), >> CurByte, OS, Fixups); >> } >> >> here CurOp=2 !=NumOps=3 && 3-2<=2 >> so while condition is satisfie...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...Emit it >>>> // according to the right size for the instruction. Some >>>> instructions >>>> // (SSE4a extrq and insertq) have two trailing immediates. >>>> while (CurOp != NumOps && NumOps - CurOp <= 2) { >>>> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >>>> X86II::getSizeOfImm(TSFlags), >>>> getImmFixupKind(TSFlags), >>>> CurByte, OS, Fixups); >>>> } >>>> >>>> here CurOp=2 !=NumOps=3 && 3...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...according to the right size for the instruction. Some >>>>>> instructions >>>>>> // (SSE4a extrq and insertq) have two trailing immediates. >>>>>> while (CurOp != NumOps && NumOps - CurOp <= 2) { >>>>>> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >>>>>> X86II::getSizeOfImm(TSFlags), >>>>>> getImmFixupKind(TSFlags), >>>>>> CurByte, OS, Fixups); >>>>>> } >>>>>> >>>&...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...the instruction. Some >>>>>>>> instructions >>>>>>>> // (SSE4a extrq and insertq) have two trailing immediates. >>>>>>>> while (CurOp != NumOps && NumOps - CurOp <= 2) { >>>>>>>> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >>>>>>>> X86II::getSizeOfImm(TSFlags), >>>>>>>> getImmFixupKind(TSFlags), >>>>>>>> CurByte, OS, Fixups); >>>>>>>> } >&g...
2013 Dec 12
3
[LLVMdev] [RFC PATCH 1/2] x86: Fix ModR/M byte output in 16-bit addressing mode
...; + } + + 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, OS, Fixups); + return; + } else { + // No displacement + EmitByte(ModRMByte(0, RegOpcodeField, RMfield), CurByte, OS); + return; + } + } + EmitByte(ModRMByte(2, RegOpcodeField, RMfield), CurByte, O...
2017 Sep 05
2
Issues in Vector Add Instruction Machine Code Emission
...t;>>>>>>> instructions >>>>>>>>>> // (SSE4a extrq and insertq) have two trailing immediates. >>>>>>>>>> while (CurOp != NumOps && NumOps - CurOp <= 2) { >>>>>>>>>> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >>>>>>>>>> X86II::getSizeOfImm(TSFlags), >>>>>>>>>> getImmFixupKind(TSFlags), >>>>>>>>>> CurByte, OS, Fixups); >>>>>&...
2017 Sep 05
2
Issues in Vector Add Instruction Machine Code Emission
...t;> instructions >>>>>>>>>>>> // (SSE4a extrq and insertq) have two trailing immediates. >>>>>>>>>>>> while (CurOp != NumOps && NumOps - CurOp <= 2) { >>>>>>>>>>>> EmitImmediate(MI.getOperand(CurOp++), MI.getLoc(), >>>>>>>>>>>> X86II::getSizeOfImm(TSFlags), >>>>>>>>>>>> getImmFixupKind(TSFlags), >>>>>>>>>>>> CurByte, OS, Fixups...
2013 Dec 16
0
[LLVMdev] [RFC PATCH 1/2] x86: Fix ModR/M byte output in 16-bit addressing mode
...isp.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, OS, > Fixups); > + return; > + } else { > + // No displacement > + EmitByte(ModRMByte(0, RegOpcodeField, RMfield), CurByte, OS); > + return; > + } > + } > + EmitByte(ModR...