diff options
Diffstat (limited to 'patio-to-cranelift/src/patio/flatbuffers.rs')
| -rw-r--r-- | patio-to-cranelift/src/patio/flatbuffers.rs | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/patio-to-cranelift/src/patio/flatbuffers.rs b/patio-to-cranelift/src/patio/flatbuffers.rs index 5622259a..35226614 100644 --- a/patio-to-cranelift/src/patio/flatbuffers.rs +++ b/patio-to-cranelift/src/patio/flatbuffers.rs @@ -10,8 +10,8 @@ use crate::{ PatioBlock, PatioBoolToInt, PatioCall, PatioCallPointer, PatioDataPtrToInt, PatioIf, PatioInstruction, PatioIntAdd, PatioIntEquals, PatioIntNotEqual, PatioIntSub, PatioIntToBool, PatioIntToDataPtr, PatioLocalStore, PatioLoop, PatioLoopBreak, - PatioLoopContinue, PatioMemoryLoad, PatioMemoryStore, PatioReturn, PatioReturnVoid, - PatioSwitch, PatioSwitchCase, PatioUnreachable, PatioVarLoad, PatioVarStore, + PatioLoopContinue, PatioMemoryLoad, PatioMemoryStore, PatioReturn, PatioSwitch, + PatioSwitchCase, PatioUnreachable, PatioVarLoad, PatioVarStore, }, operands::{PatioLocalRef, PatioOperand}, types::{PatioDataLayout, PatioType}, @@ -77,7 +77,7 @@ impl From<patio_generated::patio::PatioCompilationUnitElement<'_>> for PatioComp .iter() .map(Into::into) .collect(), - return_type: function_declaration.return_type().into(), + return_types: function_declaration.return_types().iter().map(Into::into).collect(), }) } @@ -92,7 +92,7 @@ impl From<patio_generated::patio::PatioCompilationUnitElement<'_>> for PatioComp .iter() .map(Into::into) .collect(), - return_type: function_definition.return_type().into(), + return_types: function_definition.return_types().iter().map(Into::into).collect(), body: function_definition.body().iter().map(Into::into).collect(), }) } @@ -314,14 +314,10 @@ impl From<patio_generated::patio::PatioInstruction<'_>> for PatioInstruction { let return_ = value.value_as_patio_return().unwrap(); Self::Return(PatioReturn { - value: return_.value().into(), + values: return_.values().iter().map(Into::into).collect(), }) } - patio_generated::patio::PatioInstructionValue::PatioReturnVoid => { - Self::ReturnVoid(PatioReturnVoid) - } - patio_generated::patio::PatioInstructionValue::PatioSwitch => { let switch = value.value_as_patio_switch().unwrap(); @@ -509,7 +505,6 @@ impl From<patio_generated::patio::PatioType<'_>> for PatioType { PatioTypeValue::PatioFunctionPtrType => Self::FunctionPtr, PatioTypeValue::PatioIntType => Self::Int, PatioTypeValue::PatioInt32Type => Self::Int32, - PatioTypeValue::PatioVoidType => Self::Void, type_type => { todo!( |
