rustup update (#273)

This commit is contained in:
Ashley Hauck 2020-11-26 10:00:22 +01:00 committed by GitHub
parent c16ef16370
commit 5f3fd5c9d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 22 additions and 10 deletions

View File

@ -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,

View File

@ -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);

View File

@ -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)
} }

View File

@ -1 +1 @@
nightly-2020-11-15 nightly-2020-11-24

View File

@ -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

View File

@ -1,3 +1,3 @@
#!/usr/bin/env bash #!/usr/bin/env bash
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