diff options
| author | Zalathar <Zalathar@users.noreply.github.com> | 2024-10-25 13:06:57 +1100 |
|---|---|---|
| committer | Zalathar <Zalathar@users.noreply.github.com> | 2024-10-25 13:55:44 +1100 |
| commit | 4923e856be61bfb8faac18eaf1f2b0d8e70ea3be (patch) | |
| tree | 7fc5c1734ac84476702df66f6ffaf6ed98de556a /compiler/rustc_codegen_llvm/src/builder.rs | |
| parent | a93c1718c80b9f100056c8eec3fc37fbd6424134 (diff) | |
| download | rust-4923e856be61bfb8faac18eaf1f2b0d8e70ea3be.tar.gz rust-4923e856be61bfb8faac18eaf1f2b0d8e70ea3be.zip | |
coverage: Emit `llvm.instrprof.increment` using the normal helper method
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/builder.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/builder.rs | 26 |
1 files changed, 2 insertions, 24 deletions
diff --git a/compiler/rustc_codegen_llvm/src/builder.rs b/compiler/rustc_codegen_llvm/src/builder.rs index dbf5298d64b..8e718226a9a 100644 --- a/compiler/rustc_codegen_llvm/src/builder.rs +++ b/compiler/rustc_codegen_llvm/src/builder.rs @@ -1165,6 +1165,7 @@ impl<'a, 'll, 'tcx> BuilderMethods<'a, 'tcx> for Builder<'a, 'll, 'tcx> { self.call_lifetime_intrinsic("llvm.lifetime.end.p0i8", ptr, size); } + #[instrument(level = "debug", skip(self))] fn instrprof_increment( &mut self, fn_name: &'ll Value, @@ -1172,30 +1173,7 @@ impl<'a, 'll, 'tcx> BuilderMethods<'a, 'tcx> for Builder<'a, 'll, 'tcx> { num_counters: &'ll Value, index: &'ll Value, ) { - debug!( - "instrprof_increment() with args ({:?}, {:?}, {:?}, {:?})", - fn_name, hash, num_counters, index - ); - - let llfn = unsafe { llvm::LLVMRustGetInstrProfIncrementIntrinsic(self.cx().llmod) }; - let llty = self.cx.type_func( - &[self.cx.type_ptr(), self.cx.type_i64(), self.cx.type_i32(), self.cx.type_i32()], - self.cx.type_void(), - ); - let args = &[fn_name, hash, num_counters, index]; - let args = self.check_call("call", llty, llfn, args); - - unsafe { - let _ = llvm::LLVMRustBuildCall( - self.llbuilder, - llty, - llfn, - args.as_ptr() as *const &llvm::Value, - args.len() as c_uint, - [].as_ptr(), - 0 as c_uint, - ); - } + self.call_intrinsic("llvm.instrprof.increment", &[fn_name, hash, num_counters, index]); } fn call( |
