Index: cfe/trunk/lib/Headers/mmintrin.h =================================================================== --- cfe/trunk/lib/Headers/mmintrin.h +++ cfe/trunk/lib/Headers/mmintrin.h @@ -443,7 +443,9 @@ /* Aliases for compatibility. */ #define _m_empty _mm_empty #define _m_from_int _mm_cvtsi32_si64 +#define _m_from_int64 _mm_cvtsi64_m64 #define _m_to_int _mm_cvtsi64_si32 +#define _m_to_int64 _mm_cvtm64_si64 #define _m_packsswb _mm_packs_pi16 #define _m_packssdw _mm_packs_pi32 #define _m_packuswb _mm_packs_pu16 Index: cfe/trunk/test/CodeGen/mmx-builtins.c =================================================================== --- cfe/trunk/test/CodeGen/mmx-builtins.c +++ cfe/trunk/test/CodeGen/mmx-builtins.c @@ -223,6 +223,12 @@ return _m_from_int(a); } +__m64 test_m_from_int64(long long a) { + // CHECK-LABEL: test_m_from_int64 + // CHECK: bitcast + return _m_from_int64(a); +} + __m64 test_mm_hadd_pi16(__m64 a, __m64 b) { // CHECK-LABEL: test_mm_hadd_pi16 // CHECK: call x86_mmx @llvm.x86.ssse3.phadd.w @@ -553,6 +559,12 @@ return _m_to_int(a); } +long long test_m_to_int64(__m64 a) { + // CHECK-LABEL: test_m_to_int64 + // CHECK: bitcast + return _m_to_int64(a); +} + __m64 test_mm_unpackhi_pi8(__m64 a, __m64 b) { // CHECK-LABEL: test_mm_unpackhi_pi8 // CHECK: call x86_mmx @llvm.x86.mmx.punpckhbw