mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-26 01:10:35 +02:00
* moved generic code from n386cal to ncgcal, i386 now also
uses the generic ncgcal
This commit is contained in:
parent
3c5e8e2b07
commit
6a16389f67
File diff suppressed because it is too large
Load Diff
@ -1938,6 +1938,14 @@ type
|
|||||||
tcallparanode(left).insert_typeconv(tparaitem(procdefinition.Para.first),true);
|
tcallparanode(left).insert_typeconv(tparaitem(procdefinition.Para.first),true);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{ direct call to inherited abstract method, then we
|
||||||
|
can already give a error in the compiler instead
|
||||||
|
of a runtime error }
|
||||||
|
if assigned(methodpointer) and
|
||||||
|
(methodpointer.nodetype=typen) and
|
||||||
|
(po_abstractmethod in procdefinition.procoptions) then
|
||||||
|
CGMessage(cg_e_cant_call_abstract_method);
|
||||||
|
|
||||||
errorexit:
|
errorexit:
|
||||||
aktcallprocdef:=oldcallprocdef;
|
aktcallprocdef:=oldcallprocdef;
|
||||||
end;
|
end;
|
||||||
@ -2399,7 +2407,11 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.131 2003-03-17 18:54:23 peter
|
Revision 1.132 2003-04-04 15:38:56 peter
|
||||||
|
* moved generic code from n386cal to ncgcal, i386 now also
|
||||||
|
uses the generic ncgcal
|
||||||
|
|
||||||
|
Revision 1.131 2003/03/17 18:54:23 peter
|
||||||
* fix missing self setting for method to procvar conversion in
|
* fix missing self setting for method to procvar conversion in
|
||||||
tp_procvar mode
|
tp_procvar mode
|
||||||
|
|
||||||
|
1185
compiler/ncgcal.pas
1185
compiler/ncgcal.pas
File diff suppressed because it is too large
Load Diff
@ -32,7 +32,7 @@ interface
|
|||||||
type
|
type
|
||||||
tppccallnode = class(tcgcallnode)
|
tppccallnode = class(tcgcallnode)
|
||||||
function pass_1 : tnode;override;
|
function pass_1 : tnode;override;
|
||||||
procedure load_framepointer;override;
|
procedure push_framepointer;override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
@ -71,7 +71,7 @@ implementation
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure tppccallnode.load_framepointer;
|
procedure tppccallnode.push_framepointer;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
{
|
{
|
||||||
@ -111,7 +111,11 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.4 2002-12-05 14:28:12 florian
|
Revision 1.5 2003-04-04 15:38:56 peter
|
||||||
|
* moved generic code from n386cal to ncgcal, i386 now also
|
||||||
|
uses the generic ncgcal
|
||||||
|
|
||||||
|
Revision 1.4 2002/12/05 14:28:12 florian
|
||||||
* some variant <-> dyn. array stuff
|
* some variant <-> dyn. array stuff
|
||||||
|
|
||||||
Revision 1.3 2002/11/25 17:43:28 peter
|
Revision 1.3 2002/11/25 17:43:28 peter
|
||||||
|
@ -31,7 +31,7 @@ type
|
|||||||
which is part of the stardrad calling mechanism. This function will do nothing.
|
which is part of the stardrad calling mechanism. This function will do nothing.
|
||||||
the frame pointer register is the stack pointer register of the caller, and is
|
the frame pointer register is the stack pointer register of the caller, and is
|
||||||
set when generating function prologue in cgcpu.tcgSPARC.g_stackframe_entry}
|
set when generating function prologue in cgcpu.tcgSPARC.g_stackframe_entry}
|
||||||
procedure load_framepointer;override;
|
procedure push_framepointer;override;
|
||||||
end;
|
end;
|
||||||
implementation
|
implementation
|
||||||
uses
|
uses
|
||||||
@ -54,7 +54,7 @@ function TSparcCallNode.pass_1:TNode;
|
|||||||
then
|
then
|
||||||
TSparcProcInfo(procinfo).maxpushedparasize:=datasize;
|
TSparcProcInfo(procinfo).maxpushedparasize:=datasize;
|
||||||
end;
|
end;
|
||||||
procedure TSparcCallNode.load_framepointer;
|
procedure TSparcCallNode.push_framepointer;
|
||||||
begin
|
begin
|
||||||
InternalError(2002101000);
|
InternalError(2002101000);
|
||||||
end;
|
end;
|
||||||
@ -63,7 +63,11 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.8 2003-02-05 22:44:55 mazen
|
Revision 1.9 2003-04-04 15:38:56 peter
|
||||||
|
* moved generic code from n386cal to ncgcal, i386 now also
|
||||||
|
uses the generic ncgcal
|
||||||
|
|
||||||
|
Revision 1.8 2003/02/05 22:44:55 mazen
|
||||||
* making UNIT lower case.
|
* making UNIT lower case.
|
||||||
|
|
||||||
Revision 1.7 2003/02/04 21:50:54 mazen
|
Revision 1.7 2003/02/04 21:50:54 mazen
|
||||||
|
Loading…
Reference in New Issue
Block a user