You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EDIT: recalibrated my thoughts on the two possible approaches.
It would be nice to have a list of the known calling conventions in Inkwell. This list can be found in the LLVM C API here. Currently FunctionValue::get_call_conventions, FunctionValue::set_call_conventions, etc. just take a u32 and there in no hint anywhere in Inkwell what values LLVM expects.
There are two ways I see to add these constants.
As variants of an enum.
As constants in a module.
Based on the way to LLVM API is set up, it seems like there might be uses for unknown/unenumerated calling conventions (see, for instance, FirstTargetCChere). Perhaps, someone more familiar with the matter can weight in here. So, if we do (1) we probably need an Unknown variant which can hold an arbitrary integer.
EDIT: recalibrated my thoughts on the two possible approaches.
It would be nice to have a list of the known calling conventions in Inkwell. This list can be found in the LLVM C API here. Currently
FunctionValue::get_call_conventions
,FunctionValue::set_call_conventions
, etc. just take au32
and there in no hint anywhere in Inkwell what values LLVM expects.There are two ways I see to add these constants.
Based on the way to LLVM API is set up, it seems like there might be uses for unknown/unenumerated calling conventions (see, for instance,
FirstTargetCC
here). Perhaps, someone more familiar with the matter can weight in here. So, if we do (1) we probably need anUnknown
variant which can hold an arbitrary integer.The list of constants is:
The text was updated successfully, but these errors were encountered: