36 lines · c
1// RUN: %clang_cc1 %s -flax-vector-conversions=none -ffreestanding -triple=x86_64-unknown-unknown -target-feature +movrs \2// RUN: -emit-llvm -o - -Wall -Werror -pedantic -Wno-gnu-statement-expression | FileCheck %s3 4#include <immintrin.h>5#include <stddef.h>6 7char test_movrs_si8(const char * __A) {8 // CHECK-LABEL: @test_movrs_si8(9 // CHECK: call i8 @llvm.x86.movrsqi(10 return _movrs_i8(__A);11}12 13short test_movrs_si16(const short * __A) {14 // CHECK-LABEL: @test_movrs_si16(15 // CHECK: call i16 @llvm.x86.movrshi(16 return _movrs_i16(__A);17}18 19int test_movrs_si32(const int * __A) {20 // CHECK-LABEL: @test_movrs_si32(21 // CHECK: call i32 @llvm.x86.movrssi(22 return _movrs_i32(__A);23}24 25long long test_movrs_si64(const long long * __A) {26 // CHECK-LABEL: @test_movrs_si64(27 // CHECK: call i64 @llvm.x86.movrsdi(28 return _movrs_i64(__A);29}30 31void test_m_prefetch_rs(void *p) {32 _m_prefetchrs(p);33 // CHECK-LABEL: define{{.*}} void @test_m_prefetch_rs34 // CHECK: call void @llvm.x86.prefetchrs({{.*}})35}36