MCPcopy Create free account
hub / github.com/Rust-GPU/rust-cuda / range_metadata

Method range_metadata

crates/rustc_codegen_nvvm/src/builder.rs:632–647  ·  view source on GitHub ↗
(&mut self, load: &'ll Value, range: WrappingRange)

Source from the content-addressed store, hash-verified

630 }
631
632 fn range_metadata(&mut self, load: &'ll Value, range: WrappingRange) {
633 trace!("range metadata on {:?}: {:?}", load, range);
634 unsafe {
635 let llty = self.cx.val_ty(load);
636 let v = [
637 self.cx.const_uint_big(llty, range.start),
638 self.cx.const_uint_big(llty, range.end.wrapping_add(1)),
639 ];
640
641 llvm::LLVMSetMetadata(
642 load,
643 llvm::MetadataType::MD_range as c_uint,
644 llvm::LLVMMDNodeInContext(self.cx.llcx, v.as_ptr(), v.len() as c_uint),
645 );
646 }
647 }
648
649 fn nonnull_metadata(&mut self, load: &'ll Value) {
650 unsafe {

Callers 2

apply_attrs_callsiteMethod · 0.80
scalar_load_metadataMethod · 0.80

Calls 5

val_tyMethod · 0.80
const_uint_bigMethod · 0.80
wrapping_addMethod · 0.80
as_ptrMethod · 0.80
lenMethod · 0.45

Tested by

no test coverage detected