From 351c11d2a8fe8302dc8560f66bf2e78c66b64f26 Mon Sep 17 00:00:00 2001 From: mazen Date: Tue, 22 Oct 2002 13:43:01 +0000 Subject: [PATCH] - cga.pas redueced to an empty unit --- compiler/sparc/aasmcpu.pas | 67 ++++++++----------- compiler/sparc/cga.pas | 28 ++++---- compiler/sparc/cgcpu.pas | 128 +++++++++++++++++++++---------------- compiler/sparc/naddcpu.pas | 11 ++-- compiler/sparc/ncpucnv.pas | 12 ++-- 5 files changed, 130 insertions(+), 116 deletions(-) diff --git a/compiler/sparc/aasmcpu.pas b/compiler/sparc/aasmcpu.pas index 03b28a114d..9054e31375 100644 --- a/compiler/sparc/aasmcpu.pas +++ b/compiler/sparc/aasmcpu.pas @@ -40,18 +40,16 @@ type function getfillbuf:pchar;override; end; taicpu = class(taicpu_abstract) - opsize:topsize; - constructor op_none(op:tasmop;_size:topsize); - constructor op_reg(op:tasmop;_size:topsize;_op1:tregister); - constructor op_const(op:tasmop;_size:topsize;_op1:aword); - constructor op_ref(op:tasmop;_size:topsize;const _op1:treference); - constructor op_reg_reg(op:tasmop;_size:topsize;_op1,_op2:tregister); - constructor op_reg_ref(op:tasmop;_size:topsize;_op1:tregister;const _op2:treference); - constructor op_reg_const(op:tasmop; _size:topsize; _op1:tregister; _op2:aword); - constructor op_const_reg(op:tasmop;_size:topsize;_op1:aword;_op2:tregister); - constructor op_const_const(op:tasmop;_size:topsize;_op1,_op2:aword); - constructor op_const_ref(op:tasmop;_size:topsize;_op1:aword;const _op2:treference); - constructor op_ref_reg(op:tasmop;_size:topsize;const _op1:treference;_op2:tregister); + opsize:topsize; + constructor op_none(op:tasmop); + constructor op_reg(op:tasmop;reg:tregister); + constructor op_const(op:tasmop;_op1:aword); + constructor op_ref(op:tasmop;const _op1:treference); + constructor op_reg_reg(op:tasmop;_op1,_op2:tregister); + constructor op_reg_ref(op:tasmop;_op1:tregister;const _op2:treference); + constructor op_reg_const(op:tasmop;_op1:tregister;_op2:aword); + constructor op_const_reg(op:tasmop;_op1:aword;_op2:tregister); + constructor op_ref_reg(op:tasmop;const _op1:treference;_op2:tregister); { this is only allowed if _op1 is an int value (_op1^.isintvalue=true) } constructor op_ref_ref(op:tasmop;_size:topsize;const _op1,_op2:treference); constructor op_reg_reg_reg(op:tasmop;_size:topsize;_op1,_op2,_op3:tregister); @@ -102,6 +100,8 @@ implementation uses cutils, CpuGas; +const + _size=S_L;{To be removed soon} {**************************************************************************** TAI_ALIGN ****************************************************************************} @@ -158,33 +158,33 @@ procedure taicpu.init(_size:topsize); {segprefix:=R_NONE;}{This may be only for I386 architecture!} opsize:=_size; end; -constructor taicpu.op_none(op:tasmop;_size:topsize); +constructor taicpu.op_none(op:tasmop); begin inherited create(op); init(_size); end; -constructor taicpu.op_reg(op:tasmop;_size:topsize;_op1:tregister); +constructor taicpu.op_reg(op:tasmop;reg:tregister); begin inherited create(op); init(_size); ops:=1; - loadreg(0,_op1); + loadreg(0,reg); end; -constructor taicpu.op_const(op:tasmop;_size:topsize;_op1:aword); +constructor taicpu.op_const(op:tasmop;_op1:aword); begin inherited create(op); init(_size); ops:=1; loadconst(0,_op1); end; -constructor taicpu.op_ref(op:tasmop;_size:topsize;const _op1:treference); +constructor taicpu.op_ref(op:tasmop;const _op1:treference); begin inherited create(op); init(_size); ops:=1; loadref(0,_op1); end; -constructor taicpu.op_reg_reg(op:tasmop;_size:topsize;_op1,_op2:tregister); +constructor taicpu.op_reg_reg(op:tasmop;_op1,_op2:tregister); begin inherited create(op); init(_size); @@ -192,7 +192,7 @@ constructor taicpu.op_reg_reg(op:tasmop;_size:topsize;_op1,_op2:tregister); loadreg(0,_op1); loadreg(1,_op2); end; -constructor taicpu.op_reg_const(op:tasmop; _size:topsize; _op1:tregister; _op2:aword); +constructor taicpu.op_reg_const(op:tasmop;_op1:tregister; _op2:aword); begin inherited create(op); init(_size); @@ -200,7 +200,7 @@ constructor taicpu.op_reg_const(op:tasmop; _size:topsize; _op1:tregister; _op2:a loadreg(0,_op1); loadconst(1,_op2); end; -constructor taicpu.op_reg_ref(op:tasmop;_size:topsize;_op1:tregister;const _op2:treference); +constructor taicpu.op_reg_ref(op:tasmop;_op1:tregister;const _op2:treference); begin inherited create(op); init(_size); @@ -208,7 +208,7 @@ constructor taicpu.op_reg_ref(op:tasmop;_size:topsize;_op1:tregister;const _op2: loadreg(0,_op1); loadref(1,_op2); end; -constructor taicpu.op_const_reg(op:tasmop;_size:topsize;_op1:aword;_op2:tregister); +constructor taicpu.op_const_reg(op:tasmop;_op1:aword;_op2:tregister); begin inherited create(op); init(_size); @@ -216,26 +216,10 @@ constructor taicpu.op_const_reg(op:tasmop;_size:topsize;_op1:aword;_op2:tregiste loadconst(0,_op1); loadreg(1,_op2); end; -constructor taicpu.op_const_const(op:tasmop;_size:topsize;_op1,_op2:aword); - begin - inherited create(op); - init(_size); - ops:=2; - loadconst(0,_op1); - loadconst(1,_op2); - end; -constructor taicpu.op_const_ref(op:tasmop;_size:topsize;_op1:aword;const _op2:treference); - begin - inherited create(op); - init(_size); - ops:=2; - loadconst(0,_op1); - loadref(1,_op2); - end; -constructor taicpu.op_ref_reg(op:tasmop;_size:topsize;const _op1:treference;_op2:tregister); +constructor taicpu.op_ref_reg(op:tasmop;const _op1:treference;_op2:tregister); begin inherited create(op); - init(_size); + init(S_L); ops:=2; loadref(0,_op1); loadreg(1,_op2); @@ -1154,7 +1138,10 @@ procedure InitAsm; end. { $Log$ - Revision 1.7 2002-10-20 19:01:38 mazen + Revision 1.8 2002-10-22 13:43:01 mazen + - cga.pas redueced to an empty unit + + Revision 1.7 2002/10/20 19:01:38 mazen + op_raddr_reg and op_caddr_reg added to fix functions prologue Revision 1.6 2002/10/19 20:35:07 mazen diff --git a/compiler/sparc/cga.pas b/compiler/sparc/cga.pas index f054b2b461..b745ac8eb6 100644 --- a/compiler/sparc/cga.pas +++ b/compiler/sparc/cga.pas @@ -83,49 +83,50 @@ procedure emitjmp(c:tasmcond;var l:tasmlabel); end; procedure emit_none(i:tasmop;s:topsize); begin - exprasmList.concat(Taicpu.Op_none(i,s)); + exprasmList.concat(Taicpu.Op_none(i)); end; procedure emit_reg(i:tasmop;s:topsize;reg:tregister); begin - exprasmList.concat(Taicpu.Op_reg(i,s,reg)); + exprasmList.concat(Taicpu.Op_reg(i,reg)); end; procedure emit_ref(i:tasmop;s:topsize;const ref:treference); begin - exprasmList.concat(Taicpu.Op_ref(i,s,ref)); + exprasmList.concat(Taicpu.Op_ref(i,ref)); end; procedure emit_const(i:tasmop;s:topsize;c:longint); begin - exprasmList.concat(Taicpu.Op_const(i,s,aword(c))); + exprasmList.concat(Taicpu.Op_const(i,aword(c))); end; procedure emit_const_reg(i:tasmop;s:topsize;c:longint;reg:tregister); begin - exprasmList.concat(Taicpu.Op_const_reg(i,s,aword(c),reg)); + exprasmList.concat(Taicpu.Op_const_reg(i,aword(c),reg)); end; procedure emit_const_ref(i:tasmop;s:topsize;c:longint;const ref:treference); begin - exprasmList.concat(Taicpu.Op_const_ref(i,s,aword(c),ref)); + //exprasmList.concat(Taicpu.Op_const_ref(i,s,aword(c),ref)); + InternalError(2002102102); end; procedure emit_ref_reg(i:tasmop;s:topsize;const ref:treference;reg:tregister); begin - exprasmList.concat(Taicpu.Op_ref_reg(i,s,ref,reg)); + exprasmList.concat(Taicpu.Op_ref_reg(i,ref,reg)); end; procedure emit_reg_ref(i:tasmop;s:topsize;reg:tregister;const ref:treference); begin - exprasmList.concat(Taicpu.Op_reg_ref(i,s,reg,ref)); + exprasmList.concat(Taicpu.Op_reg_ref(i,reg,ref)); end; procedure emit_reg_reg(i:tasmop;s:topsize;reg1,reg2:tregister); begin if reg1<>reg2 then - exprasmList.concat(Taicpu.Op_reg_reg(i,s,reg1,reg2)); + exprasmList.concat(Taicpu.Op_reg_reg(i,reg1,reg2)); end; procedure emit_const_reg_reg(i:tasmop;s:topsize;c:longint;reg1,reg2:tregister); begin - exprasmList.concat(Taicpu.Op_reg_const_reg(i,s,reg1,c,reg2)); + exprasmList.concat(Taicpu.Op_reg_const_reg(i,S_L,reg1,c,reg2)); end; procedure emit_reg_reg_reg(i:tasmop;s:topsize;reg1,reg2,reg3:tregister); begin - exprasmList.concat(Taicpu.Op_reg_reg_reg(i,s,reg1,reg2,reg3)); + exprasmList.concat(Taicpu.Op_reg_reg_reg(i,S_L,reg1,reg2,reg3)); end; procedure emit_sym(i:tasmop;s:topsize;op:tasmsymbol); begin @@ -134,7 +135,10 @@ procedure emit_sym(i:tasmop;s:topsize;op:tasmsymbol); end. { $Log$ - Revision 1.2 2002-10-13 19:47:34 mazen + Revision 1.3 2002-10-22 13:43:01 mazen + - cga.pas redueced to an empty unit + + Revision 1.2 2002/10/13 19:47:34 mazen - logs removed Revision 1.1 2002/08/22 08:30:50 mazen diff --git a/compiler/sparc/cgcpu.pas b/compiler/sparc/cgcpu.pas index 1a87b35526..cf239b6482 100644 --- a/compiler/sparc/cgcpu.pas +++ b/compiler/sparc/cgcpu.pas @@ -128,10 +128,15 @@ procedure tcgSPARC.a_param_reg(list:TAasmOutput;size:tcgsize;r:tregister;CONST L end; procedure tcgSPARC.a_param_const(list:TAasmOutput;size:tcgsize;a:aword;CONST LocPara:TParaLocation); BEGIN - IF(Size<>OS_32)AND(Size<>OS_S32) - THEN - InternalError(2002032213); - List.Concat(taicpu.op_const(A_LD,S_L,a)); + with List do + case Size of + OS_32,OS_S32: + Concat(taicpu.op_const(A_LD,a)); + OS_64,OS_S64: + Concat(taicpu.op_const(A_LDD,a)); + else + InternalError(2002032213); + end; END; procedure tcgSPARC.a_param_ref(list:TAasmOutput;size:tcgsize;const r:TReference;const LocPara:TParaLocation); var @@ -183,16 +188,16 @@ procedure tcgSPARC.a_paramaddr_ref(list:TAasmOutput;CONST r:TReference;CONST Loc ELSE IF(r.base=R_NO)AND(r.index<>R_NO)AND (r.offset=0)AND(r.scalefactor=0)AND(r.symbol=nil) THEN - list.concat(Taicpu.Op_reg(A_LD,S_L,r.index)) + list.concat(Taicpu.Op_reg(A_LD,r.index)) ELSE IF(r.base<>R_NO)AND(r.index=R_NO)AND (r.offset=0)AND(r.symbol=nil) THEN - list.concat(Taicpu.Op_reg(A_LD,S_L,r.base)) + list.concat(Taicpu.Op_reg(A_LD,r.base)) ELSE BEGIN tmpreg:=get_scratch_reg_address(list); a_loadaddr_ref_reg(list,r,tmpreg); - list.concat(taicpu.op_reg(A_LD,S_L,tmpreg)); + list.concat(taicpu.op_reg(A_LD,tmpreg)); free_scratch_reg(list,tmpreg); END; END; @@ -200,14 +205,14 @@ procedure tcgSPARC.a_call_name(list:TAasmOutput;CONST s:string); BEGIN WITH List,objectlibrary DO BEGIN - concat(taicpu.op_sym(A_CALL,S_NO,newasmsymbol(s))); - concat(taicpu.op_none(A_NOP,S_NO)); + concat(taicpu.op_sym(A_CALL,S_L,newasmsymbol(s))); + concat(taicpu.op_none(A_NOP)); END; END; procedure tcgSPARC.a_call_ref(list:TAasmOutput;CONST ref:TReference); BEGIN - list.concat(taicpu.op_ref(A_CALL,S_NO,ref)); - list.concat(taicpu.op_none(A_NOP,S_NO)); + list.concat(taicpu.op_ref(A_CALL,ref)); + list.concat(taicpu.op_none(A_NOP)); END; {********************** load instructions ********************} procedure tcgSPARC.a_load_const_reg(list:TAasmOutput;size:TCGSize;a:aword;reg:TRegister); @@ -224,16 +229,23 @@ procedure tcgSPARC.a_load_const_ref(list:TAasmOutput;size:tcgsize;a:aword;CONST WITH List DO IF a=0 THEN - Concat(taicpu.op_reg_ref(A_ST,TCGSize2OpSize[size],R_G0,ref)) + Concat(taicpu.op_reg_ref(A_ST,R_G0,ref)) ELSE BEGIN a_load_const_reg(list,size,a,R_G1); - list.concat(taicpu.op_reg_ref(A_ST,TCGSize2OpSize[size],R_G1,ref)); + case size of + OS_32,OS_S32: + Concat(taicpu.op_reg_ref(A_ST,R_G1,ref)); + OS_64,OS_S64: + Concat(taicpu.op_reg_ref(A_STD,R_G1,ref)); + else + InternalError(2002102100); + end; END; END; procedure tcgSPARC.a_load_reg_ref(list:TAasmOutput;size:TCGSize;reg:tregister;CONST ref:TReference); BEGIN - list.concat(taicpu.op_reg_ref(A_LD,TCGSize2OpSize[size],reg,ref)); + list.concat(taicpu.op_reg_ref(A_LD,reg,ref)); END; procedure tcgSPARC.a_load_ref_reg(list:TAasmOutput;size:tcgsize;const ref:TReference;reg:tregister); var @@ -241,7 +253,7 @@ procedure tcgSPARC.a_load_ref_reg(list:TAasmOutput;size:tcgsize;const ref:TRefer s:topsize; begin sizes2load(size,S_L,op,s); - list.concat(taicpu.op_ref_reg(op,s,ref,reg)); + list.concat(taicpu.op_ref_reg(op,ref,reg)); end; procedure tcgSPARC.a_load_reg_reg(list:TAasmOutput;fromsize,tosize:tcgsize;reg1,reg2:tregister); var @@ -676,7 +688,7 @@ procedure tcgSPARC.a_op_const_reg(list:TAasmOutput;Op:TOpCG;a:AWord;reg:TRegiste tmpref.offset := LongInt(a); if op = OP_SUB then tmpref.offset := -tmpref.offset; - list.concat(taicpu.op_ref_reg(A_NONE,S_L,tmpref,dst)); + list.concat(taicpu.op_ref_reg(A_NONE,tmpref,dst)); end else internalerror(200112302); end; @@ -710,7 +722,7 @@ procedure tcgSPARC.a_op_const_reg(list:TAasmOutput;Op:TOpCG;a:AWord;reg:TRegiste tmpref.base := src1; tmpref.index := src2; tmpref.scalefactor := 1; - list.concat(taicpu.op_ref_reg(A_NONE,S_L,tmpref,dst)); + list.concat(taicpu.op_ref_reg(A_NONE,tmpref,dst)); end else internalerror(200112303); end; @@ -723,19 +735,21 @@ procedure tcgSPARC.a_op_const_reg(list:TAasmOutput;Op:TOpCG;a:AWord;reg:TRegiste begin if (a = 0) then - list.concat(taicpu.op_reg_reg(A_CMP,S_L,reg,reg)) + list.concat(taicpu.op_reg_reg(A_CMP,reg,reg)) else - list.concat(taicpu.op_const_reg(A_CMP,S_L,a,reg)); + list.concat(taicpu.op_const_reg(A_CMP,a,reg)); a_jmp_cond(list,cmp_op,l); end; - procedure tcgSPARC.a_cmp_const_ref_label(list:TAasmOutput;size:tcgsize;cmp_op:topcmp;a:aword;CONST ref:TReference; - l:tasmlabel); - - begin - list.concat(taicpu.op_const_ref(A_CMP,TCgSize2OpSize[size],a,ref)); - a_jmp_cond(list,cmp_op,l); - end; +procedure tcgSPARC.a_cmp_const_ref_label(list:TAasmOutput;size:tcgsize;cmp_op:topcmp;a:aword;const ref:TReference;l:tasmlabel); + begin + with List do + begin + Concat(taicpu.op_const(A_LD,a)); + Concat(taicpu.op_ref(A_CMP,ref)); + end; + a_jmp_cond(list,cmp_op,l); + end; procedure tcgSPARC.a_cmp_reg_reg_label(list:TAasmOutput;size:tcgsize;cmp_op:topcmp; reg1,reg2:tregister;l:tasmlabel); @@ -754,7 +768,7 @@ procedure tcgSPARC.a_op_const_reg(list:TAasmOutput;Op:TOpCG;a:AWord;reg:TRegiste begin opsize := S_Q{makeregsize(reg,size)}; - list.concat(taicpu.op_ref_reg(A_CMP,opsize,ref,reg)); + list.concat(taicpu.op_ref_reg(A_CMP,ref,reg)); a_jmp_cond(list,cmp_op,l); end; @@ -902,10 +916,10 @@ procedure tcgSPARC.a_loadaddr_ref_reg(list:TAasmOutput;CONST ref:TReference;r:tr tempref:TReference; begin get_64bit_ops(op,op1,op2); - list.concat(taicpu.op_ref_reg(op1,S_L,ref,reg.reglo)); + list.concat(taicpu.op_ref_reg(op1,ref,reg.reglo)); tempref:=ref; inc(tempref.offset,4); - list.concat(taicpu.op_ref_reg(op2,S_L,tempref,reg.reghi)); + list.concat(taicpu.op_ref_reg(op2,tempref,reg.reghi)); end; @@ -914,8 +928,8 @@ procedure tcgSPARC.a_loadaddr_ref_reg(list:TAasmOutput;CONST ref:TReference;r:tr op1,op2:TAsmOp; begin get_64bit_ops(op,op1,op2); - list.concat(taicpu.op_reg_reg(op1,S_L,regsrc.reglo,regdst.reglo)); - list.concat(taicpu.op_reg_reg(op2,S_L,regsrc.reghi,regdst.reghi)); + list.concat(taicpu.op_reg_reg(op1,regsrc.reglo,regdst.reglo)); + list.concat(taicpu.op_reg_reg(op2,regsrc.reghi,regdst.reghi)); end; @@ -934,8 +948,8 @@ procedure tcgSPARC.a_loadaddr_ref_reg(list:TAasmOutput;CONST ref:TReference;r:tr begin // can't use a_op_const_ref because this may use dec/inc get_64bit_ops(op,op1,op2); - list.concat(taicpu.op_const_reg(op1,S_L,Lo(Value),regdst.reglo)); - list.concat(taicpu.op_const_reg(op2,S_L,Hi(Value),regdst.reghi)); + list.concat(taicpu.op_const_reg(op1,Lo(Value),regdst.reglo)); + list.concat(taicpu.op_const_reg(op2,Hi(Value),regdst.reghi)); end; else internalerror(200204021); @@ -943,28 +957,29 @@ procedure tcgSPARC.a_loadaddr_ref_reg(list:TAasmOutput;CONST ref:TReference;r:tr end; - procedure TCg64fSPARC.a_op64_const_ref(list:TAasmOutput;op:TOpCG;value:qWord;CONST ref:TReference); - var - op1,op2:TAsmOp; - tempref:TReference; - begin - case op of - OP_AND,OP_OR,OP_XOR: - WITH cg DO - begin - a_op_const_ref(list,op,OS_32,Lo(Value),ref); - tempref:=ref; - inc(tempref.offset,4); - a_op_const_ref(list,op,OS_32,Hi(Value),tempref); - end; - OP_ADD, OP_SUB: +procedure TCg64fSPARC.a_op64_const_ref(list:TAasmOutput;op:TOpCG;value:qWord;const ref:TReference); + var + op1,op2:TAsmOp; + tempref:TReference; + begin + case op of + OP_AND,OP_OR,OP_XOR: + with cg do + begin + a_op_const_ref(list,op,OS_32,Lo(Value),ref); + tempref:=ref; + inc(tempref.offset,4); + a_op_const_ref(list,op,OS_32,Hi(Value),tempref); + end; + OP_ADD, OP_SUB: begin get_64bit_ops(op,op1,op2); // can't use a_op_const_ref because this may use dec/inc - list.concat(taicpu.op_const_ref(op1,S_L,Lo(Value),ref)); +{ list.concat(taicpu.op_const_ref(op1,Lo(Value),ref)); tempref:=ref; inc(tempref.offset,4); - list.concat(taicpu.op_const_ref(op2,S_L,Hi(Value),tempref)); + list.concat(taicpu.op_const_ref(op2,S_L,Hi(Value),tempref));} + InternalError(2002102101); end; else internalerror(200204022); @@ -1068,8 +1083,8 @@ procedure TCgSparc.g_concatcopy(list:taasmoutput;const source,dest:treference;le objectlibrary.getlabel(lab); a_label(list, lab); list.concat(taicpu.op_reg_const_reg(A_SUB,S_L,countreg,1,countreg)); - list.concat(taicpu.op_reg_ref(A_LDF,S_L,R_F0,src)); - list.concat(taicpu.op_reg_ref(A_STD,S_L,R_F0,dst)); + list.concat(taicpu.op_reg_ref(A_LDF,R_F0,src)); + list.concat(taicpu.op_reg_ref(A_STD,R_F0,dst)); //a_jmp(list,A_BC,C_NE,0,lab); free_scratch_reg(list,countreg); a_reg_dealloc(list,R_F0); @@ -1221,7 +1236,7 @@ procedure tcgSPARC.floatload(list:TAasmOutput;t:tcgsize;CONST ref:TReference); s:topsize; BEGIN floatloadops(t,op,s); - list.concat(Taicpu.Op_ref(op,s,ref)); + list.concat(Taicpu.Op_ref(op,ref)); { inc(trgcpu(rg).fpuvaroffset);} END; procedure tcgSPARC.floatstoreops(t:tcgsize;var op:tasmop;var s:topsize); @@ -1253,7 +1268,7 @@ procedure tcgSPARC.floatstore(list:TAasmOutput;t:tcgsize;CONST ref:TReference); s:topsize; BEGIN floatstoreops(t,op,s); - list.concat(Taicpu.Op_ref(op,s,ref)); + list.concat(Taicpu.Op_ref(op,ref)); { dec(trgcpu(rg).fpuvaroffset);} END; BEGIN @@ -1261,7 +1276,10 @@ BEGIN END. { $Log$ - Revision 1.17 2002-10-20 19:01:38 mazen + Revision 1.18 2002-10-22 13:43:01 mazen + - cga.pas redueced to an empty unit + + Revision 1.17 2002/10/20 19:01:38 mazen + op_raddr_reg and op_caddr_reg added to fix functions prologue Revision 1.16 2002/10/13 21:46:07 mazen diff --git a/compiler/sparc/naddcpu.pas b/compiler/sparc/naddcpu.pas index b87a4438af..48336d373b 100644 --- a/compiler/sparc/naddcpu.pas +++ b/compiler/sparc/naddcpu.pas @@ -238,11 +238,11 @@ procedure TSparcAddNode.emit_op_right_left(op:TAsmOp;OpSize:TOpsize); with exprasmlist do case right.location.loc of LOC_REGISTER,LOC_CREGISTER: - concat(taicpu.op_reg_reg(op,opsize,right.location.register,left.location.register)); + concat(taicpu.op_reg_reg(op,right.location.register,left.location.register)); LOC_REFERENCE,LOC_CREFERENCE : - concat(taicpu.op_ref_reg(op,opsize,right.location.reference,left.location.register)); + concat(taicpu.op_ref_reg(op,right.location.reference,left.location.register)); LOC_CONSTANT: - concat(taicpu.op_const_reg(op,opsize,right.location.value,left.location.register)); + concat(taicpu.op_const_reg(op,right.location.value,left.location.register)); else InternalError(200203232); end; @@ -526,7 +526,10 @@ begin end. { $Log$ - Revision 1.4 2002-10-10 20:23:57 mazen + Revision 1.5 2002-10-22 13:43:01 mazen + - cga.pas redueced to an empty unit + + Revision 1.4 2002/10/10 20:23:57 mazen * tabs replaces by spaces } diff --git a/compiler/sparc/ncpucnv.pas b/compiler/sparc/ncpucnv.pas index f19aca72ea..662709d5d7 100644 --- a/compiler/sparc/ncpucnv.pas +++ b/compiler/sparc/ncpucnv.pas @@ -263,7 +263,7 @@ implementation location.register := rg.getregisterfpu(exprasmlist); {$WARNING FIXME what reallty should be done?} - exprasmlist.concat(taicpu.op_reg_ref(A_LD,S_L,location.register,ref)); + exprasmlist.concat(taicpu.op_reg_ref(A_LD,location.register,ref)); tg.ungetiftemp(exprasmlist,ref); @@ -274,8 +274,7 @@ implementation { work around bug in some PowerPC processors } if (tfloatdef(resulttype.def).typ = s32real) then {$WARNING FIXME what reallty should be done?} - exprasmlist.concat(taicpu.op_reg_reg(A_ADD,S_L,location.register, - location.register)); + exprasmlist.concat(taicpu.op_reg_reg(A_ADD,location.register,location.register)); end; @@ -287,7 +286,7 @@ implementation if (tfloatdef(left.resulttype.def).typ = s64real) and (tfloatdef(resulttype.def).typ = s32real) then {$WARNING FIXME what reallty should be done?} - exprasmlist.concat(taicpu.op_reg_reg(A_ADD,S_L,location.register,location.register)); + exprasmlist.concat(taicpu.op_reg_reg(A_ADD,location.register,location.register)); end; @@ -422,7 +421,10 @@ begin end. { $Log$ - Revision 1.4 2002-10-10 19:57:52 mazen + Revision 1.5 2002-10-22 13:43:01 mazen + - cga.pas redueced to an empty unit + + Revision 1.4 2002/10/10 19:57:52 mazen * Just to update repsitory Revision 1.3 2002/09/07 15:25:14 peter