Forum: Programmieren allgemein
Delphi
by himitsu,
26. Nov 2022
Jupp, der Aufrufer kann sich garnicht um sowas kümmern ... woher soll er wissen was wie in der Funktion gemacht wird, und außerdem könnte es sich auch mal ändern.
Aber ja, rein von den Daten ist es schon möglich, dass der Aufrufer bereits Platz auf dem Stack vorbereitet, für alle Parameter in den Registern ... aber wenn, dann wäre es doch eigentlich schwachsinnig "eventuell" nutzlos sowas zu...
Forum: Programmieren allgemein
Delphi
by himitsu,
25. Nov 2022
Gut, so ist es wenigstens Eindeutig.
1. Paramater immer in RCX oder XMM0
2. Paramater immer in RDX oder XMM1
3. Paramater immer in R8 oder XMM2
4. Paramater immer in R9 oder XMM3
Rest auf dem Stack
Oder anders ausgedrückt in XMM3 pder R9 ist immer der 3. Parameter oder nichts.
---
Forum: Programmieren allgemein
Delphi
by himitsu,
24. Nov 2022
procedure GetParm(Par1: Int64; Par2: Int64); stdcall;
begin
//
end;
procedure SendPar; stdcall;
begin
GetParm(1, 2);
end;