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

Method scalar_load_metadata

crates/rustc_codegen_nvvm/src/builder.rs:525–541  ·  view source on GitHub ↗
(
            bx: &mut Builder<'a, 'll, 'tcx>,
            load: &'ll Value,
            scalar: &abi::Scalar,
        )

Source from the content-addressed store, hash-verified

523 }
524
525 fn scalar_load_metadata<'a, 'll, 'tcx>(
526 bx: &mut Builder<'a, 'll, 'tcx>,
527 load: &'ll Value,
528 scalar: &abi::Scalar,
529 ) {
530 match scalar.value {
531 abi::Int(..) => {
532 if !scalar.is_always_valid(bx) {
533 bx.range_metadata(load, scalar.valid_range);
534 }
535 }
536 abi::Pointer if !scalar.valid_range.contains(0) => {
537 bx.nonnull_metadata(load);
538 }
539 _ => {}
540 }
541 }
542
543 let val = if let Some(llextra) = place.llextra {
544 OperandValue::Ref(place.llval, Some(llextra), place.align)

Callers

nothing calls this directly

Calls 3

range_metadataMethod · 0.80
nonnull_metadataMethod · 0.80
containsMethod · 0.45

Tested by

no test coverage detected