Push the layout interner through the backends

This commit is contained in:
Ayaz Hafiz 2022-08-31 12:19:51 -05:00
parent c5466810a4
commit ed04c2040a
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58
11 changed files with 34 additions and 14 deletions

View file

@ -268,7 +268,9 @@ fn build_transform_caller_help<'a, 'ctx, 'env>(
}
match (
closure_data_layout.is_represented().is_some(),
closure_data_layout
.is_represented(env.layout_interner)
.is_some(),
closure_data_layout.runtime_representation(),
) {
(false, _) => {

View file

@ -57,7 +57,7 @@ use roc_mono::ir::{
};
use roc_mono::layout::{
Builtin, CapturesNiche, LambdaName, LambdaSet, Layout, LayoutIds, RawFunctionLayout,
TagIdIntType, UnionLayout,
STLayoutInterner, TagIdIntType, UnionLayout,
};
use roc_std::RocDec;
use roc_target::{PtrWidth, TargetInfo};
@ -203,6 +203,7 @@ impl LlvmBackendMode {
pub struct Env<'a, 'ctx, 'env> {
pub arena: &'a Bump,
pub layout_interner: &'env STLayoutInterner<'a>,
pub context: &'ctx Context,
pub builder: &'env Builder<'ctx>,
pub dibuilder: &'env DebugInfoBuilder<'ctx>,