diff options
| author | Denis Merigoux <denis.merigoux@gmail.com> | 2018-08-22 17:48:32 +0200 |
|---|---|---|
| committer | Eduard-Mihai Burtescu <edy.burt@gmail.com> | 2018-11-16 14:11:34 +0200 |
| commit | 9c41e1aa109e27eef4e6d21e90ecbbb1a12e6468 (patch) | |
| tree | f80386a91a7d17ecf0dbb6298e1ab4d4ce69b6a0 /src/librustc_codegen_llvm/base.rs | |
| parent | 1ca750683ef1fc6db178c2fff8c0d0fb713690ab (diff) | |
| download | rust-9c41e1aa109e27eef4e6d21e90ecbbb1a12e6468.tar.gz rust-9c41e1aa109e27eef4e6d21e90ecbbb1a12e6468.zip | |
Removed genericity over Value in various functions
Prelude to using associated types in traits rather than type parameters
Diffstat (limited to 'src/librustc_codegen_llvm/base.rs')
| -rw-r--r-- | src/librustc_codegen_llvm/base.rs | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/librustc_codegen_llvm/base.rs b/src/librustc_codegen_llvm/base.rs index f8b9c794086..31a19439c84 100644 --- a/src/librustc_codegen_llvm/base.rs +++ b/src/librustc_codegen_llvm/base.rs @@ -89,7 +89,7 @@ use syntax_pos::symbol::InternedString; use syntax::attr; use rustc::hir::{self, CodegenFnAttrs}; -use value::{Value, ValueTrait}; +use value::Value; use mir::operand::OperandValue; @@ -391,11 +391,10 @@ pub fn call_assume(bx: &Builder<'_, 'll, '_>, val: &'ll Value) { } pub fn from_immediate<'a, 'll: 'a, 'tcx: 'll, - Value : ?Sized, Builder: BuilderMethods<'a, 'll, 'tcx, Value, BasicBlock>>( bx: &Builder, val: &'ll Value -) -> &'ll Value where Value : ValueTrait { +) -> &'ll Value { if val_ty(val) == Type::i1(bx.cx()) { bx.zext(val, Type::i8(bx.cx())) } else { @@ -426,7 +425,6 @@ pub fn to_immediate_scalar( } pub fn call_memcpy<'a, 'll: 'a, 'tcx: 'll, - Value : ?Sized, Builder: BuilderMethods<'a, 'll, 'tcx, Value, BasicBlock>>( bx: &Builder, dst: &'ll Value, @@ -435,7 +433,7 @@ pub fn call_memcpy<'a, 'll: 'a, 'tcx: 'll, src_align: Align, n_bytes: &'ll Value, flags: MemFlags, -) where Value : ValueTrait { +) { if flags.contains(MemFlags::NONTEMPORAL) { // HACK(nox): This is inefficient but there is no nontemporal memcpy. let val = bx.load(src, src_align); @@ -452,7 +450,6 @@ pub fn call_memcpy<'a, 'll: 'a, 'tcx: 'll, } pub fn memcpy_ty<'a, 'll: 'a, 'tcx: 'll, - Value : ?Sized, Builder: BuilderMethods<'a, 'll, 'tcx, Value, BasicBlock>>( bx: &Builder, dst: &'ll Value, @@ -461,7 +458,7 @@ pub fn memcpy_ty<'a, 'll: 'a, 'tcx: 'll, src_align: Align, layout: TyLayout<'tcx>, flags: MemFlags, -) where Value : ValueTrait { +) { let size = layout.size.bytes(); if size == 0 { return; @@ -558,7 +555,7 @@ fn maybe_create_entry_wrapper(cx: &CodegenCx) { use_start_lang_item: bool, ) { let llfty = - Type::func::<Value>(&[Type::c_int(cx), Type::i8p(cx).ptr_to()], Type::c_int(cx)); + Type::func(&[Type::c_int(cx), Type::i8p(cx).ptr_to()], Type::c_int(cx)); let main_ret_ty = cx.tcx.fn_sig(rust_main_def_id).output(); // Given that `main()` has no arguments, |
