diff options
| author | Denis Merigoux <denis.merigoux@gmail.com> | 2018-10-05 15:08:49 +0200 |
|---|---|---|
| committer | Eduard-Mihai Burtescu <edy.burt@gmail.com> | 2018-11-16 15:08:18 +0200 |
| commit | 54dd3a47fd54eb466dad7e47b41ec1b5b2dafd5a (patch) | |
| tree | f2507cb57a8212eed8a963415ac5db2a4bccc8a8 /src/librustc_codegen_ssa/meth.rs | |
| parent | 1ebdfbb02641676fb4f8efb1f87cfe8d0d29d2b3 (diff) | |
| download | rust-54dd3a47fd54eb466dad7e47b41ec1b5b2dafd5a.tar.gz rust-54dd3a47fd54eb466dad7e47b41ec1b5b2dafd5a.zip | |
All Builder methods now take &mut self instead of &self
Diffstat (limited to 'src/librustc_codegen_ssa/meth.rs')
| -rw-r--r-- | src/librustc_codegen_ssa/meth.rs | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/librustc_codegen_ssa/meth.rs b/src/librustc_codegen_ssa/meth.rs index 4584adfff65..ea573640da9 100644 --- a/src/librustc_codegen_ssa/meth.rs +++ b/src/librustc_codegen_ssa/meth.rs @@ -30,7 +30,7 @@ impl<'a, 'tcx: 'a> VirtualIndex { pub fn get_fn<Bx: BuilderMethods<'a, 'tcx>>( self, - bx: &Bx, + bx: &mut Bx, llvtable: Bx::Value, fn_ty: &FnType<'tcx, Ty<'tcx>> ) -> Bx::Value { @@ -42,10 +42,8 @@ impl<'a, 'tcx: 'a> VirtualIndex { bx.cx().type_ptr_to(bx.cx().fn_ptr_backend_type(fn_ty)) ); let ptr_align = bx.tcx().data_layout.pointer_align; - let ptr = bx.load( - bx.inbounds_gep(llvtable, &[bx.cx().const_usize(self.0)]), - ptr_align - ); + let gep = bx.inbounds_gep(llvtable, &[bx.cx().const_usize(self.0)]); + let ptr = bx.load(gep, ptr_align); bx.nonnull_metadata(ptr); // Vtable loads are invariant bx.set_invariant_load(ptr); @@ -54,7 +52,7 @@ impl<'a, 'tcx: 'a> VirtualIndex { pub fn get_usize<Bx: BuilderMethods<'a, 'tcx>>( self, - bx: &Bx, + bx: &mut Bx, llvtable: Bx::Value ) -> Bx::Value { // Load the data pointer from the object. @@ -62,10 +60,8 @@ impl<'a, 'tcx: 'a> VirtualIndex { let llvtable = bx.pointercast(llvtable, bx.cx().type_ptr_to(bx.cx().type_isize())); let usize_align = bx.tcx().data_layout.pointer_align; - let ptr = bx.load( - bx.inbounds_gep(llvtable, &[bx.cx().const_usize(self.0)]), - usize_align - ); + let gep = bx.inbounds_gep(llvtable, &[bx.cx().const_usize(self.0)]); + let ptr = bx.load(gep, usize_align); // Vtable loads are invariant bx.set_invariant_load(ptr); ptr |
