This commit is contained in:
Folkert 2023-07-23 19:02:17 +02:00
parent f96c78b3a5
commit 10aa4f58c9
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C
5 changed files with 191 additions and 5 deletions

View file

@ -1665,6 +1665,23 @@ trait Backend<'a> {
arg_layouts,
ret_layout,
),
LowLevel::SetJmp => self.build_fn_call(
sym,
String::from("roc_setjmp"),
args,
arg_layouts,
ret_layout,
),
LowLevel::LongJmp => self.build_fn_call(
sym,
String::from("roc_longjmp"),
args,
arg_layouts,
ret_layout,
),
LowLevel::SetLongJmpBuffer => {
self.build_data_pointer(sym, String::from("setlongjmp_buffer"))
}
LowLevel::DictPseudoSeed => self.build_fn_call(
sym,
bitcode::UTILS_DICT_PSEUDO_SEED.to_string(),
@ -1967,6 +1984,7 @@ trait Backend<'a> {
);
fn build_fn_pointer(&mut self, dst: &Symbol, fn_name: String);
fn build_data_pointer(&mut self, dst: &Symbol, data_name: String);
/// Move a returned value into `dst`
fn move_return_value(&mut self, dst: &Symbol, ret_layout: &InLayout<'a>);