Bug 78782 - [x86] _mm_loadu_si64 intrinsic missing
Summary: [x86] _mm_loadu_si64 intrinsic missing
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: target (show other bugs)
Version: 6.2.1
: P3 normal
Target Milestone: 9.0
Assignee: Uroš Bizjak
URL:
Keywords:
Depends on:
Blocks: 88918
  Show dependency treegraph
 
Reported: 2016-12-12 21:24 UTC by Thiago Macieira
Modified: 2019-03-08 16:31 UTC (History)
3 users (show)

See Also:
Host:
Target: x86_64-*-*, i?86-*-*
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thiago Macieira 2016-12-12 21:24:41 UTC
See this copy of the Intel manual: https://hjlebbink.github.io/x86doc/html/MOVQ.html (note the typo in the _mm_move_epi64 intrinsic).

Clang addition: https://reviews.llvm.org/D21504

However, Microsoft's compiler seems not to have it either. Seems like the functionality can be achieved by way of _mm_loadl_epi64.
Comment 1 Jeffrey Walton 2019-01-09 17:27:29 UTC
Also documented in the Intel Intrinsics Guide at https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm_loadu_si64. According to the guide, the intrinsic is the movq instruction.
Comment 2 Uroš Bizjak 2019-01-09 20:14:42 UTC
CC added.
Comment 3 uros 2019-03-08 15:54:20 UTC
Author: uros
Date: Fri Mar  8 15:53:47 2019
New Revision: 269497

URL: https://gcc.gnu.org/viewcvs?rev=269497&root=gcc&view=rev
Log:
	PR target/68924
	PR target/78782
	PR target/87558
	* config/i386/emmintrin.h (_mm_loadu_si64): New intrinsic.
	(_mm_storeu_si64): Ditto.

testsuite/ChangeLog:

	PR target/68924
	PR target/78782
	PR target/87558
	* gcc.target/i386/pr78782.c: New test.
	* gcc.target/i386/pr87558.c: Ditto.


Added:
    trunk/gcc/testsuite/gcc.target/i386/pr78782.c
    trunk/gcc/testsuite/gcc.target/i386/pr87558.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/emmintrin.h
    trunk/gcc/testsuite/ChangeLog
Comment 4 Uroš Bizjak 2019-03-08 16:31:38 UTC
Implemented for gcc-9.