Displaying 9 results from an estimated 9 matches for "curbyt".
Did you mean:
curbyte
2013 Dec 12
3
[LLVMdev] [RFC PATCH 1/2] x86: Fix ModR/M byte output in 16-bit addressing mode
...(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, OS, Fixups);
+ return;
+ } else {
+ // No displacement
+ EmitByte(ModRMByte(0, RegOpcodeField, RMfield), CurByte, OS);
+ return;
+ }
+ }
+ EmitByte(ModRMByte(2, RegO...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...86/MCTargetDesc/X86BaseInfo.h:574!
i made extensive use of gdb and after debugging i found the line with
issue in X86MCCodeEmitter.cpp.
Here NumOps=3 (all registers). and CurOp is 1st initialized to 0.
then, the following code gets executed;
case X86II::MRMDestReg: {
EmitByte(BaseOpcode, CurByte, OS);
unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
EmitRegModRMByte(MI.getOperand(CurOp),
GetX86RegNum(MI.getOperand(SrcRegNum)), CurByte, OS);
CurOp = SrcRegNum + 1;
break;
}
so here CurOp becomes 2.
After this;
it comes to;
else {
// If there is a remain...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...d after debugging i found the line with
>> issue in X86MCCodeEmitter.cpp.
>>
>> Here NumOps=3 (all registers). and CurOp is 1st initialized to 0.
>>
>> then, the following code gets executed;
>>
>> case X86II::MRMDestReg: {
>> EmitByte(BaseOpcode, CurByte, OS);
>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>> EmitRegModRMByte(MI.getOperand(CurOp),
>> GetX86RegNum(MI.getOperand(SrcRegNum)), CurByte,
>> OS);
>> CurOp = SrcRegNum + 1;
>> break;
>> }
>> so here CurOp...
2013 Dec 16
0
[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;
> + }
&g...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...n X86MCCodeEmitter.cpp.
>>>>
>>>> Here NumOps=3 (all registers). and CurOp is 1st initialized to 0.
>>>>
>>>> then, the following code gets executed;
>>>>
>>>> case X86II::MRMDestReg: {
>>>> EmitByte(BaseOpcode, CurByte, OS);
>>>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>>>> EmitRegModRMByte(MI.getOperand(CurOp),
>>>> GetX86RegNum(MI.getOperand(SrcRegNum)), CurByte,
>>>> OS);
>>>> CurOp = SrcRegNum + 1;
>>>>...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...;>>>> Here NumOps=3 (all registers). and CurOp is 1st initialized to 0.
>>>>>>
>>>>>> then, the following code gets executed;
>>>>>>
>>>>>> case X86II::MRMDestReg: {
>>>>>> EmitByte(BaseOpcode, CurByte, OS);
>>>>>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>>>>>> EmitRegModRMByte(MI.getOperand(CurOp),
>>>>>> GetX86RegNum(MI.getOperand(SrcRegNum)),
>>>>>> CurByte, OS);
>>>>>>...
2017 Sep 04
2
Issues in Vector Add Instruction Machine Code Emission
...isters). and CurOp is 1st initialized to 0.
>>>>>>>>
>>>>>>>> then, the following code gets executed;
>>>>>>>>
>>>>>>>> case X86II::MRMDestReg: {
>>>>>>>> EmitByte(BaseOpcode, CurByte, OS);
>>>>>>>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>>>>>>>> EmitRegModRMByte(MI.getOperand(CurOp),
>>>>>>>> GetX86RegNum(MI.getOperand(SrcRegNum)),
>>>>>>>> CurByte, O...
2017 Sep 05
2
Issues in Vector Add Instruction Machine Code Emission
...0.
>>>>>>>>>>
>>>>>>>>>> then, the following code gets executed;
>>>>>>>>>>
>>>>>>>>>> case X86II::MRMDestReg: {
>>>>>>>>>> EmitByte(BaseOpcode, CurByte, OS);
>>>>>>>>>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>>>>>>>>>> EmitRegModRMByte(MI.getOperand(CurOp),
>>>>>>>>>> GetX86RegNum(MI.getOperand(SrcRegNum)),
>>>>>...
2017 Sep 05
2
Issues in Vector Add Instruction Machine Code Emission
...>>>
>>>>>>>>>>>> then, the following code gets executed;
>>>>>>>>>>>>
>>>>>>>>>>>> case X86II::MRMDestReg: {
>>>>>>>>>>>> EmitByte(BaseOpcode, CurByte, OS);
>>>>>>>>>>>> unsigned SrcRegNum = CurOp + 1; //SrcRegNum=1
>>>>>>>>>>>> EmitRegModRMByte(MI.getOperand(CurOp),
>>>>>>>>>>>> GetX86RegNum(MI.getOperand(SrcRegNu...