5 // Ensure that we do not call `memcpy` for the following function.
6 // `memset` and `init` should be called directly on the return pointer.
8 pub fn nrvo(init: fn(&mut [u8; 4096])) -> [u8; 4096] {
10 // CHECK: @llvm.memset
11 // CHECK-NOT: @llvm.memcpy
14 let mut buf = [0; 4096];