mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-02 13:20:26 +02:00
codetools: added proc modifier vectorcall, patch #33134
git-svn-id: trunk@57287 -
This commit is contained in:
parent
a10e37e072
commit
1f153b731b
@ -262,6 +262,7 @@ type
|
||||
psLibrary,
|
||||
psEnumerator,
|
||||
psVarargs,
|
||||
psVectorCall,
|
||||
psEdgedBracket
|
||||
);
|
||||
TAllProcedureSpecifiers = set of TProcedureSpecifier;
|
||||
@ -273,7 +274,7 @@ const
|
||||
'EXTERNAL', 'FORWARD', 'PASCAL', 'ASSEMBLER', 'SAVEREGISTERS',
|
||||
'FAR', 'NEAR', 'FINAL', 'STATIC', 'MWPASCAL', 'NOSTACKFRAME',
|
||||
'DEPRECATED', 'DISPID', 'PLATFORM', 'SAFECALL', 'UNIMPLEMENTED',
|
||||
'EXPERIMENTAL', 'LIBRARY', 'ENUMERATOR', 'VARARGS',
|
||||
'EXPERIMENTAL', 'LIBRARY', 'ENUMERATOR', 'VARARGS', 'VECTORCALL',
|
||||
'['
|
||||
);
|
||||
|
||||
|
@ -897,6 +897,7 @@ begin
|
||||
Add('FINAL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('ENUMERATOR' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VARARGS' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VECTORCALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('EXTERNAL' ,{$ifdef FPC}@{$endif}AllwaysTrue); //jvm
|
||||
end;
|
||||
|
||||
@ -937,6 +938,7 @@ begin
|
||||
Add('SYSCALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('UNIMPLEMENTED',{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VARARGS' ,{$ifdef FPC}@{$endif}AllwaysTrue); // kylix
|
||||
Add('VECTORCALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('WEAKEXTERNAL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('[' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
end;
|
||||
@ -959,6 +961,7 @@ begin
|
||||
Add('SAFECALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('UNIMPLEMENTED',{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VARARGS' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VECTORCALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('EXPERIMENTAL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('LIBRARY' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('IS' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
@ -973,6 +976,7 @@ begin
|
||||
Add('EXTDECL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('MWPASCAL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('POPSTACK' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
Add('VECTORCALL' ,{$ifdef FPC}@{$endif}AllwaysTrue);
|
||||
// Note: 'inline' and 'is nested' are not a calling specifiers
|
||||
end;
|
||||
|
||||
|
@ -279,7 +279,9 @@ type
|
||||
pocall_softfloat,
|
||||
{ Metrowerks Pascal. Special case on Mac OS (X): passes all }
|
||||
{ constant records by reference. }
|
||||
pocall_mwpascal
|
||||
pocall_mwpascal,
|
||||
{ for x86-64: Microsoft's "vectorcall" ABI }
|
||||
pocall_vectorcall
|
||||
);
|
||||
tproccalloptions = set of tproccalloption;
|
||||
|
||||
@ -414,7 +416,8 @@ const
|
||||
'SafeCall',
|
||||
'StdCall',
|
||||
'SoftFloat',
|
||||
'MWPascal'
|
||||
'MWPascal',
|
||||
'VectorCall'
|
||||
);
|
||||
proctypeoptionNames : array[tproctypeoption] of string[20]=(
|
||||
'none',
|
||||
|
Loading…
Reference in New Issue
Block a user