From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 69902 invoked by alias); 25 Oct 2015 10:44:06 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 69843 invoked by uid 48); 25 Oct 2015 10:44:00 -0000 From: "noloader at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/68081] Cygwin GCC cannot compile program that uses __builtin_ia32_rdseed64_step Date: Sun, 25 Oct 2015 10:44:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 5.2.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: noloader at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-10/txt/msg02044.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68081 --- Comment #5 from Jeffrey Walton --- (In reply to Marc Glisse from comment #4) > For intrinsics, gcc mostly considers Intel as the standard, so the > documentation would be https://software.intel.com/en-us/node/523865 . Thanks Andrew. Please don't take this in an argumentative manner... Intel is aggressive at times with respect to anti-competivie practices. Intel builds software that is fast for its processors, and slow or non-existent for other maker's CPUs. Microsoft uses Intel intrinsics too, and they even link back to the Intel docs. Microsoft has lots of footnotes that effectively state "does not work with AMD CPUs". Confer, check out the use of footnote [2] at http://msdn.microsoft.com/en-us/library/hh977022.aspx. Does GCC arbitrarily penalize AMD? Should I just do this in ASM and forgo builtins/intrinsics? I had to do it in ASM on Microsoft platforms precisely because of the anti-competivie practices percolated up from Intel. And using the documented GCC functions is proving to be more trouble than its worth. I just checked another Cygwin installation providing X86, and it can't compile the program either. A copy/paste of the code into NASM is not a hardship.