Skip to content

Commit d0dc943

Browse files
committed
Introduce perma-unstable wasm-c-abi flag
1 parent ed5c3bc commit d0dc943

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

src/builder.rs

+7-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ use rustc_span::Span;
3131
use rustc_target::abi::{
3232
self, call::FnAbi, Align, HasDataLayout, Size, TargetDataLayout, WrappingRange,
3333
};
34-
use rustc_target::spec::{HasTargetSpec, Target};
34+
use rustc_target::spec::{HasTargetSpec, HasWasmCAbiOpt, Target, WasmCAbi};
3535

3636
use crate::common::{type_is_pointer, SignType, TypeReflection};
3737
use crate::context::CodegenCx;
@@ -2349,6 +2349,12 @@ impl<'tcx> HasTargetSpec for Builder<'_, '_, 'tcx> {
23492349
}
23502350
}
23512351

2352+
impl<'tcx> HasWasmCAbiOpt for Builder<'_, '_, 'tcx> {
2353+
fn wasm_c_abi_opt(&self) -> WasmCAbi {
2354+
self.cx.wasm_c_abi_opt()
2355+
}
2356+
}
2357+
23522358
pub trait ToGccComp {
23532359
fn to_gcc_comparison(&self) -> ComparisonOp;
23542360
}

src/context.rs

+7-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ use rustc_span::{source_map::respan, Span};
2020
use rustc_target::abi::{
2121
call::FnAbi, HasDataLayout, PointeeInfo, Size, TargetDataLayout, VariantIdx,
2222
};
23-
use rustc_target::spec::{HasTargetSpec, Target, TlsModel};
23+
use rustc_target::spec::{HasTargetSpec, HasWasmCAbiOpt, Target, TlsModel, WasmCAbi};
2424

2525
use crate::callee::get_fn;
2626
use crate::common::SignType;
@@ -555,6 +555,12 @@ impl<'gcc, 'tcx> HasTargetSpec for CodegenCx<'gcc, 'tcx> {
555555
}
556556
}
557557

558+
impl<'gcc, 'tcx> HasWasmCAbiOpt for CodegenCx<'gcc, 'tcx> {
559+
fn wasm_c_abi_opt(&self) -> WasmCAbi {
560+
self.tcx.sess.opts.unstable_opts.wasm_c_abi
561+
}
562+
}
563+
558564
impl<'gcc, 'tcx> LayoutOfHelpers<'tcx> for CodegenCx<'gcc, 'tcx> {
559565
type LayoutOfResult = TyAndLayout<'tcx>;
560566

0 commit comments

Comments
 (0)