* removed temp defines

This commit is contained in:
peter 1999-07-05 20:13:06 +00:00
parent ebd738f2f5
commit 248826aa81
11 changed files with 58 additions and 177 deletions

View File

@ -2091,9 +2091,12 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.68 1999-07-02 12:18:46 jonas Revision 1.69 1999-07-05 20:13:06 peter
* released setconstnot (changed to {$ifndef nosetconstnot}) * removed temp defines
* released shlmul (changed to {$ifndef no shlmul})
Revision 1.68 1999/07/02 12:18:46 jonas
* released setconstnot (changed to $ifndef nosetconstnot)
* released shlmul (changed to $ifndef no shlmul)
Revision 1.67 1999/06/14 17:47:45 peter Revision 1.67 1999/06/14 17:47:45 peter
* merged * merged

View File

@ -593,7 +593,7 @@ implementation
var var
r : preference; r : preference;
hregister,hregister2 : tregister; hregister : tregister;
l1,l2 : pasmlabel; l1,l2 : pasmlabel;
begin begin
@ -1392,7 +1392,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.77 1999-07-04 16:37:08 florian Revision 1.78 1999-07-05 20:13:07 peter
* removed temp defines
Revision 1.77 1999/07/04 16:37:08 florian
+ qword/int64 -> floating point type cast + qword/int64 -> floating point type cast
Revision 1.76 1999/06/28 22:29:10 florian Revision 1.76 1999/06/28 22:29:10 florian

View File

@ -26,9 +26,6 @@ interface
uses uses
tree; tree;
{$define SMALLSETORD}
procedure secondrealconst(var p : ptree); procedure secondrealconst(var p : ptree);
procedure secondfixconst(var p : ptree); procedure secondfixconst(var p : ptree);
procedure secondordconst(var p : ptree); procedure secondordconst(var p : ptree);
@ -300,7 +297,6 @@ implementation
i : longint; i : longint;
neededtyp : tait; neededtyp : tait;
begin begin
{$ifdef SMALLSETORD}
{ small sets are loaded as constants } { small sets are loaded as constants }
if psetdef(p^.resulttype)^.settype=smallset then if psetdef(p^.resulttype)^.settype=smallset then
begin begin
@ -309,7 +305,6 @@ implementation
p^.location.reference.offset:=plongint(p^.value_set)^; p^.location.reference.offset:=plongint(p^.value_set)^;
exit; exit;
end; end;
{$endif}
if psetdef(p^.resulttype)^.settype=smallset then if psetdef(p^.resulttype)^.settype=smallset then
neededtyp:=ait_const_32bit neededtyp:=ait_const_32bit
else else
@ -406,7 +401,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.36 1999-05-27 19:44:10 peter Revision 1.37 1999-07-05 20:13:08 peter
* removed temp defines
Revision 1.36 1999/05/27 19:44:10 peter
* removed oldasm * removed oldasm
* plabel -> pasmlabel * plabel -> pasmlabel
* -a switches to source writing automaticly * -a switches to source writing automaticly

View File

@ -195,7 +195,6 @@ implementation
{ only calculate reference } { only calculate reference }
cleartempgen; cleartempgen;
secondpass(p^.t2); secondpass(p^.t2);
{$ifndef OLDFORVER}
hs:=p^.t2^.resulttype^.size; hs:=p^.t2^.resulttype^.size;
cmp32:=getregister32; cmp32:=getregister32;
case hs of case hs of
@ -212,10 +211,6 @@ implementation
cmpreg:=cmp32; cmpreg:=cmp32;
end; end;
end; end;
(*
if not(simple_loadn) then
CGMessage(cg_e_illegal_count_var);
already done in firstfor !! *)
{ first set the to value { first set the to value
because the count var can be in the expression !! } because the count var can be in the expression !! }
@ -237,51 +232,13 @@ implementation
else else
concatcopy(p^.right^.location.reference,temp1,hs,false,false); concatcopy(p^.right^.location.reference,temp1,hs,false,false);
end end
else temptovalue:=false; else
{$endif OLDFORVER} temptovalue:=false;
{ produce start assignment } { produce start assignment }
cleartempgen; cleartempgen;
secondpass(p^.left); secondpass(p^.left);
count_var_is_signed:=is_signed(porddef(p^.t2^.resulttype)); count_var_is_signed:=is_signed(porddef(p^.t2^.resulttype));
{$ifdef OLDFORVER}
hs:=p^.t2^.resulttype^.size;
cmp32:=getregister32;
case hs of
1 : begin
opsize:=S_B;
cmpreg:=reg32toreg8(cmp32);
end;
2 : begin
opsize:=S_W;
cmpreg:=reg32toreg16(cmp32);
end;
4 : begin
opsize:=S_L;
cmpreg:=cmp32;
end;
end;
cleartempgen;
secondpass(p^.right);
{ calculate pointer value and check if changeable and if so }
{ load into temporary variable }
if p^.right^.treetype<>ordconstn then
begin
temp1.symbol:=nil;
gettempofsizereference(hs,temp1);
temptovalue:=true;
if (p^.right^.location.loc=LOC_REGISTER) or
(p^.right^.location.loc=LOC_CREGISTER) then
begin
exprasmlist^.concat(new(pai386,op_reg_ref(A_MOV,opsize,p^.right^.location.register,
newreference(temp1))));
end
else
concatcopy(p^.right^.location.reference,temp1,hs,false,false);
end
else temptovalue:=false;
{$endif OLDFORVER}
if temptovalue then if temptovalue then
begin begin
if p^.t2^.location.loc=LOC_CREGISTER then if p^.t2^.location.loc=LOC_CREGISTER then
@ -795,7 +752,10 @@ do_jmp:
end. end.
{ {
$Log$ $Log$
Revision 1.40 1999-06-14 00:43:35 peter Revision 1.41 1999-07-05 20:13:09 peter
* removed temp defines
Revision 1.40 1999/06/14 00:43:35 peter
* merged * merged
Revision 1.39.2.1 1999/06/14 00:39:29 peter Revision 1.39.2.1 1999/06/14 00:39:29 peter

View File

@ -620,10 +620,8 @@ implementation
popusedregisters(pushed); popusedregisters(pushed);
end; end;
{$IfnDef OLDVAL}
Procedure Handle_Val; Procedure Handle_Val;
var var
hp,node, code_para, dest_para : ptree; hp,node, code_para, dest_para : ptree;
hreg,hreg2: TRegister; hreg,hreg2: TRegister;
@ -832,7 +830,6 @@ implementation
disposetree(dest_para); disposetree(dest_para);
UnGetIfTemp(hr); UnGetIfTemp(hr);
end; end;
{$EndIf OLDVAL}
var var
r : preference; r : preference;
@ -1227,12 +1224,10 @@ implementation
handle_str; handle_str;
maybe_loadesi; maybe_loadesi;
end; end;
{$IfnDef OLDVAL}
in_val_x : in_val_x :
Begin Begin
handle_val; handle_val;
End; End;
{$EndIf OLDVAL}
in_include_x_y, in_include_x_y,
in_exclude_x_y: in_exclude_x_y:
begin begin
@ -1318,7 +1313,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.61 1999-07-03 14:14:27 florian Revision 1.62 1999-07-05 20:13:10 peter
* removed temp defines
Revision 1.61 1999/07/03 14:14:27 florian
+ start of val(int64/qword) + start of val(int64/qword)
* longbool, wordbool constants weren't written, fixed * longbool, wordbool constants weren't written, fixed

View File

@ -218,24 +218,6 @@ implementation
simple_loadn:=false; simple_loadn:=false;
if hregister=R_NO then if hregister=R_NO then
hregister:=getregister32; hregister:=getregister32;
{$ifdef OLDHIGH}
if is_open_array(pvarsym(p^.symtableentry)^.definition) or
is_open_string(pvarsym(p^.symtableentry)^.definition) then
begin
if (p^.location.reference.base=procinfo.framepointer) then
begin
highframepointer:=p^.location.reference.base;
highoffset:=p^.location.reference.offset;
end
else
begin
highframepointer:=R_EDI;
highoffset:=p^.location.reference.offset;
exprasmlist^.concat(new(pai386,op_reg_reg(A_MOV,S_L,
p^.location.reference.base,R_EDI)));
end;
end;
{$endif}
if p^.location.loc=LOC_CREGISTER then if p^.location.loc=LOC_CREGISTER then
begin begin
exprasmlist^.concat(new(pai386,op_reg_reg(A_MOV,S_L, exprasmlist^.concat(new(pai386,op_reg_reg(A_MOV,S_L,
@ -852,7 +834,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.62 1999-06-30 15:43:18 florian Revision 1.63 1999-07-05 20:13:12 peter
* removed temp defines
Revision 1.62 1999/06/30 15:43:18 florian
* two bugs regarding method variables fixed * two bugs regarding method variables fixed
- if you take in a method the address of another method - if you take in a method the address of another method
don't need self anymore don't need self anymore

View File

@ -74,12 +74,6 @@ unit cgai386;
procedure finalize(t : pdef;const ref : treference); procedure finalize(t : pdef;const ref : treference);
procedure decrstringref(t : pdef;const ref : treference); procedure decrstringref(t : pdef;const ref : treference);
{$ifdef unused}
procedure copyansistring(const dref,sref : treference);
procedure copyansistringtoshortstring(const dref,sref : treference;len : longint);
procedure copyshortstringtoansistring(const dref,sref : treference);
{$endif}
function maybe_push(needed : byte;p : ptree;isint64 : boolean) : boolean; function maybe_push(needed : byte;p : ptree;isint64 : boolean) : boolean;
procedure push_int(l : longint); procedure push_int(l : longint);
procedure emit_push_mem(const ref : treference); procedure emit_push_mem(const ref : treference);
@ -757,65 +751,18 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
ungetiftemp(p^.right^.location.reference); ungetiftemp(p^.right^.location.reference);
end; end;
{$ifdef unused}
procedure copyansistring(const dref,sref : treference);
var
pushed : tpushed;
begin
pushusedregisters(pushed,$ff);
emitpushreferenceaddr(dref);
emitpushreferenceaddr(sref);
{ should we cut to the length specified in the declaration ?? }
emitcall('FPC_ANSISTR_ASSIGN');
maybe_loadesi;
popusedregisters(pushed);
end;
procedure copyansistringtoshortstring(const dref,sref : treference;len : longint);
var
pushed : tpushed;
begin
pushusedregisters(pushed,$ff);
emitpushreferenceaddr(dref);
emit_push_mem(sref);
push_int(len);
{ should we cut to the length specified in the declaration ?? }
emitcall('FPC_ANSISTR_TO_SHORTSTR_COPY');
maybe_loadesi;
popusedregisters(pushed);
end;
procedure copyshortstringtoansistring(const dref,sref : treference);
var
pushed : tpushed;
begin
pushusedregisters(pushed,$ff);
emitpushreferenceaddr(dref);
emit_push_mem(sref);
{push_int(len);}
{ should we cut to the length specified in the declaration ?? }
emitcall('FPC_SHORTSTR_TO_ANSISTR_COPY');
maybe_loadesi;
popusedregisters(pushed);
end;
{$endif}
{***************************************************************************** {*****************************************************************************
Emit Push Functions Emit Push Functions
*****************************************************************************} *****************************************************************************}
function maybe_push(needed : byte;p : ptree;isint64 : boolean) : boolean; function maybe_push(needed : byte;p : ptree;isint64 : boolean) : boolean;
var var
pushed : boolean; pushed : boolean;
{hregister : tregister; } {hregister : tregister; }
{$ifdef TEMPS_NOT_PUSH} {$ifdef TEMPS_NOT_PUSH}
href : treference; href : treference;
{$endif TEMPS_NOT_PUSH} {$endif TEMPS_NOT_PUSH}
begin begin
if needed>usablereg32 then if needed>usablereg32 then
begin begin
@ -923,6 +870,7 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
end; end;
{$endif TEMPS_NOT_PUSH} {$endif TEMPS_NOT_PUSH}
procedure push_int(l : longint); procedure push_int(l : longint);
begin begin
if (l = 0) and if (l = 0) and
@ -966,12 +914,6 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
begin begin
{ push_int(ref.offset)} { push_int(ref.offset)}
gettempofsizereference(4,href); gettempofsizereference(4,href);
{$ifndef NO_TESTGETTEMP}
{ ungetiftemp does not check if is_immediate is set }
{ so this should work }
{ the temptoremove list is currently disabled }
{!!!!!!! addtemptodestroy(s32bitdef,href); }
{$endif NO_TESTGETTEMP}
exprasmlist^.concat(new(pai386,op_const_ref(A_MOV,S_L,ref.offset,newreference(href)))); exprasmlist^.concat(new(pai386,op_const_ref(A_MOV,S_L,ref.offset,newreference(href))));
emitpushreferenceaddr(href); emitpushreferenceaddr(href);
del_reference(href); del_reference(href);
@ -3112,7 +3054,10 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister);
end. end.
{ {
$Log$ $Log$
Revision 1.11 1999-07-05 11:56:56 jonas Revision 1.12 1999-07-05 20:13:13 peter
* removed temp defines
Revision 1.11 1999/07/05 11:56:56 jonas
* merged * merged
Revision 1.5.2.4 1999/07/04 23:55:52 jonas Revision 1.5.2.4 1999/07/04 23:55:52 jonas

View File

@ -982,22 +982,8 @@ begin
def_symbol('VER'+version_nr+'_'+release_nr+'_'+patch_nr); def_symbol('VER'+version_nr+'_'+release_nr+'_'+patch_nr);
{ Temporary defines, until things settle down } { Temporary defines, until things settle down }
{$ifdef TESTOBJEXT}
def_symbol('FPC_TESTOBJEXT');
{$endif def TESTOBJEXT}
{$IfnDef OLDVAL}
def_symbol('VALINTERNCOMPILED');
{$EndIf OLDVAL}
def_symbol('NEWATT');
def_symbol('NOSTRANSI'); { use SHORTSTR,ANSISTR etc. }
{$ifndef OLDREAD}
def_symbol('NEWREADINT'); { use SHORTSTR,ANSISTR etc. }
{$endif}
def_symbol('HASFINALIZE');
def_symbol('INTERNALADDR');
def_symbol('NEWWRITEARRAY');
def_symbol('INTERNDOUBLE');
def_symbol('INT64'); def_symbol('INT64');
{ some stuff for TP compatibility } { some stuff for TP compatibility }
{$ifdef i386} {$ifdef i386}
def_symbol('CPU86'); def_symbol('CPU86');
@ -1153,7 +1139,10 @@ end;
end. end.
{ {
$Log$ $Log$
Revision 1.3 1999-07-03 00:29:54 peter Revision 1.4 1999-07-05 20:13:14 peter
* removed temp defines
Revision 1.3 1999/07/03 00:29:54 peter
* new link writing to the ppu, one .ppu is needed for all link types, * new link writing to the ppu, one .ppu is needed for all link types,
static (.o) is now always created also when smartlinking is used static (.o) is now always created also when smartlinking is used

View File

@ -453,7 +453,6 @@ unit pexpr;
pd:=voiddef; pd:=voiddef;
end; end;
{$IfnDef OLDVAL}
in_val_x: in_val_x:
Begin Begin
consume(LKLAMMER); consume(LKLAMMER);
@ -473,7 +472,6 @@ unit pexpr;
statement_syssym := p2; statement_syssym := p2;
pd := voiddef; pd := voiddef;
End; End;
{$EndIf OLDVAL}
in_include_x_y, in_include_x_y,
in_exclude_x_y : in_exclude_x_y :
@ -2044,7 +2042,10 @@ unit pexpr;
end. end.
{ {
$Log$ $Log$
Revision 1.118 1999-07-01 21:33:57 peter Revision 1.119 1999-07-05 20:13:16 peter
* removed temp defines
Revision 1.118 1999/07/01 21:33:57 peter
* merged * merged
Revision 1.117 1999/06/30 15:43:20 florian Revision 1.117 1999/06/30 15:43:20 florian

View File

@ -63,9 +63,7 @@ begin
p^.insert(new(psyssym,init('INC',in_inc_x))); p^.insert(new(psyssym,init('INC',in_inc_x)));
p^.insert(new(psyssym,init('STR',in_str_x_string))); p^.insert(new(psyssym,init('STR',in_str_x_string)));
p^.insert(new(psyssym,init('ASSERT',in_assert_x_y))); p^.insert(new(psyssym,init('ASSERT',in_assert_x_y)));
{$IfnDef OLDVAL}
p^.insert(new(psyssym,init('VAL',in_val_x))); p^.insert(new(psyssym,init('VAL',in_val_x)));
{$EndIf OLDVAL}
p^.insert(new(psyssym,init('ADDR',in_addr_x))); p^.insert(new(psyssym,init('ADDR',in_addr_x)));
end; end;
@ -240,7 +238,10 @@ end;
end. end.
{ {
$Log$ $Log$
Revision 1.24 1999-07-01 15:49:20 florian Revision 1.25 1999-07-05 20:13:17 peter
* removed temp defines
Revision 1.24 1999/07/01 15:49:20 florian
* int64/qword type release * int64/qword type release
+ lo/hi for int64/qword + lo/hi for int64/qword

View File

@ -105,10 +105,7 @@ implementation
store_count_ref:=count_ref; store_count_ref:=count_ref;
count_ref:=false; count_ref:=false;
if not (p^.inlinenumber in [in_read_x,in_readln_x,in_sizeof_x, if not (p^.inlinenumber in [in_read_x,in_readln_x,in_sizeof_x,
in_typeof_x,in_ord_x,in_str_x_string, in_typeof_x,in_ord_x,in_str_x_string,in_val_x,
{$IfnDef OLDVAL}
in_val_x,
{$EndIf OLDVAL}
in_reset_typedfile,in_rewrite_typedfile]) then in_reset_typedfile,in_rewrite_typedfile]) then
must_be_valid:=true must_be_valid:=true
else else
@ -871,7 +868,6 @@ implementation
left_right_max(p); left_right_max(p);
end; end;
{$IfnDef OLDVAL}
in_val_x : in_val_x :
begin begin
procinfo.flags:=procinfo.flags or pi_do_call; procinfo.flags:=procinfo.flags or pi_do_call;
@ -952,7 +948,6 @@ implementation
else else
inc(p^.registers32,1); inc(p^.registers32,1);
end; end;
{$EndIf OLDVAL}
in_include_x_y, in_include_x_y,
in_exclude_x_y: in_exclude_x_y:
@ -1121,7 +1116,10 @@ implementation
end. end.
{ {
$Log$ $Log$
Revision 1.39 1999-07-03 14:14:31 florian Revision 1.40 1999-07-05 20:13:18 peter
* removed temp defines
Revision 1.39 1999/07/03 14:14:31 florian
+ start of val(int64/qword) + start of val(int64/qword)
* longbool, wordbool constants weren't written, fixed * longbool, wordbool constants weren't written, fixed