mirror of
https://github.com/EmbarkStudios/rust-gpu.git
synced 2024-11-22 06:45:13 +00:00
rustup update (#273)
This commit is contained in:
parent
c16ef16370
commit
5f3fd5c9d1
@ -201,7 +201,7 @@ impl<'tcx> ConvSpirvType<'tcx> for CastTarget {
|
|||||||
.map(|&kind| {
|
.map(|&kind| {
|
||||||
Reg {
|
Reg {
|
||||||
kind,
|
kind,
|
||||||
size: self.prefix_chunk,
|
size: self.prefix_chunk_size,
|
||||||
}
|
}
|
||||||
.spirv_type(cx)
|
.spirv_type(cx)
|
||||||
})
|
})
|
||||||
@ -240,7 +240,7 @@ impl<'tcx> ConvSpirvType<'tcx> for FnAbi<'tcx, Ty<'tcx>> {
|
|||||||
PassMode::Ignore => SpirvType::Void.def(cx),
|
PassMode::Ignore => SpirvType::Void.def(cx),
|
||||||
PassMode::Direct(_) | PassMode::Pair(..) => self.ret.layout.spirv_type_immediate(cx),
|
PassMode::Direct(_) | PassMode::Pair(..) => self.ret.layout.spirv_type_immediate(cx),
|
||||||
PassMode::Cast(cast_target) => cast_target.spirv_type(cx),
|
PassMode::Cast(cast_target) => cast_target.spirv_type(cx),
|
||||||
PassMode::Indirect(..) => {
|
PassMode::Indirect { .. } => {
|
||||||
let pointee = self.ret.layout.spirv_type(cx);
|
let pointee = self.ret.layout.spirv_type(cx);
|
||||||
let pointer = SpirvType::Pointer {
|
let pointer = SpirvType::Pointer {
|
||||||
storage_class: StorageClass::Function,
|
storage_class: StorageClass::Function,
|
||||||
@ -263,14 +263,19 @@ impl<'tcx> ConvSpirvType<'tcx> for FnAbi<'tcx, Ty<'tcx>> {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
PassMode::Cast(cast_target) => cast_target.spirv_type(cx),
|
PassMode::Cast(cast_target) => cast_target.spirv_type(cx),
|
||||||
PassMode::Indirect(_, Some(_)) => {
|
PassMode::Indirect {
|
||||||
|
extra_attrs: Some(_),
|
||||||
|
..
|
||||||
|
} => {
|
||||||
let ptr_ty = cx.tcx.mk_mut_ptr(arg.layout.ty);
|
let ptr_ty = cx.tcx.mk_mut_ptr(arg.layout.ty);
|
||||||
let ptr_layout = cx.layout_of(ptr_ty);
|
let ptr_layout = cx.layout_of(ptr_ty);
|
||||||
argument_types.push(scalar_pair_element_backend_type(cx, ptr_layout, 0, true));
|
argument_types.push(scalar_pair_element_backend_type(cx, ptr_layout, 0, true));
|
||||||
argument_types.push(scalar_pair_element_backend_type(cx, ptr_layout, 1, true));
|
argument_types.push(scalar_pair_element_backend_type(cx, ptr_layout, 1, true));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
PassMode::Indirect(_, None) => {
|
PassMode::Indirect {
|
||||||
|
extra_attrs: None, ..
|
||||||
|
} => {
|
||||||
let pointee = arg.layout.spirv_type(cx);
|
let pointee = arg.layout.spirv_type(cx);
|
||||||
SpirvType::Pointer {
|
SpirvType::Pointer {
|
||||||
storage_class: StorageClass::Function,
|
storage_class: StorageClass::Function,
|
||||||
|
@ -79,7 +79,7 @@ impl<'a, 'tcx> IntrinsicCallMethods<'tcx> for Builder<'a, 'tcx> {
|
|||||||
let sig = callee_ty.fn_sig(self.tcx);
|
let sig = callee_ty.fn_sig(self.tcx);
|
||||||
let sig = self
|
let sig = self
|
||||||
.tcx
|
.tcx
|
||||||
.normalize_erasing_late_bound_regions(ParamEnv::reveal_all(), &sig);
|
.normalize_erasing_late_bound_regions(ParamEnv::reveal_all(), sig);
|
||||||
let arg_tys = sig.inputs();
|
let arg_tys = sig.inputs();
|
||||||
let name = self.tcx.item_name(def_id);
|
let name = self.tcx.item_name(def_id);
|
||||||
|
|
||||||
|
@ -290,13 +290,20 @@ impl<'a, 'tcx> ArgAbiMethods<'tcx> for Builder<'a, 'tcx> {
|
|||||||
PassMode::Pair(..) => {
|
PassMode::Pair(..) => {
|
||||||
OperandValue::Pair(next(self, idx), next(self, idx)).store(self, dst)
|
OperandValue::Pair(next(self, idx), next(self, idx)).store(self, dst)
|
||||||
}
|
}
|
||||||
PassMode::Indirect(_, Some(_)) => OperandValue::Ref(
|
PassMode::Indirect {
|
||||||
|
extra_attrs: Some(_),
|
||||||
|
..
|
||||||
|
} => OperandValue::Ref(
|
||||||
next(self, idx),
|
next(self, idx),
|
||||||
Some(next(self, idx)),
|
Some(next(self, idx)),
|
||||||
arg_abi.layout.align.abi,
|
arg_abi.layout.align.abi,
|
||||||
)
|
)
|
||||||
.store(self, dst),
|
.store(self, dst),
|
||||||
PassMode::Direct(_) | PassMode::Indirect(_, None) | PassMode::Cast(_) => {
|
PassMode::Direct(_)
|
||||||
|
| PassMode::Indirect {
|
||||||
|
extra_attrs: None, ..
|
||||||
|
}
|
||||||
|
| PassMode::Cast(_) => {
|
||||||
let next_arg = next(self, idx);
|
let next_arg = next(self, idx);
|
||||||
self.store_arg(arg_abi, next_arg, dst)
|
self.store_arg(arg_abi, next_arg, dst)
|
||||||
}
|
}
|
||||||
|
@ -1 +1 @@
|
|||||||
nightly-2020-11-15
|
nightly-2020-11-24
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
setlocal
|
setlocal
|
||||||
|
|
||||||
rustup toolchain install nightly-2020-11-15 --component rust-src rustc-dev llvm-tools-preview
|
rustup toolchain install nightly-2020-11-24 --component rust-src rustc-dev llvm-tools-preview
|
||||||
|
Loading…
Reference in New Issue
Block a user