From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id A93203851405; Wed, 23 Nov 2022 19:21:48 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A93203851405 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1669231308; bh=owZfP5p1oid7iZpdRND/4l4YK2n/l97Fj4UFnDyYRgE=; h=From:To:Subject:Date:From; b=jLMm3Hp8QDLkec2w+CeV8xLKkJavKnnwpZoG+1aEsUdrZ8s9AXv7V7V5JbgCsD50X hpLQY9cqdHZuqNiw9ujEHjl3SefH7gdkurIffU7m9zzsfU+5ecWjXNdOdihWBXr3LK 0ON2uHMD0xjuzJcvMS9O9bYbksssYhJSjbyL5d/0= From: "andreas_roever at web dot de" To: gcc-bugs@gcc.gnu.org Subject: [Bug jit/107849] New: All SIMD instrinsics are missing Date: Wed, 23 Nov 2022 19:21:48 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: jit X-Bugzilla-Version: 11.3.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: andreas_roever at web dot de X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: dmalcolm at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone attachments.created Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D107849 Bug ID: 107849 Summary: All SIMD instrinsics are missing Product: gcc Version: 11.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: jit Assignee: dmalcolm at gcc dot gnu.org Reporter: andreas_roever at web dot de Target Milestone: --- Created attachment 53956 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=3D53956&action=3Dedit A simple example showing the problem It seems like the jit library only provies builtin functions for the "stand= ard" builtin functions. All the i386 SSE, AVX, ... stuff is missing. I attache a silly little program to show what I mean. The program defines a jit function that takes an argument, calculates the s= qrt using the builtin function and returns that value. It als calls the builtin directly and then prints out the results When compiled without defining VECTOR it uses a single float and everything works as expected.=20 When VECTOR is defines everything gets redefined to use an 256bit vector wi= th 8 floats and also uses the appropriate builtin function. In that case the jit function doesn't find the builtin. I guess that that is the case because these builtins are not defined in the same .def file as the functions that are known by libgccjit. The library only uses the builtins defined in the gcc subdirectoy, but the = SIMD builtins are defined in the folder gcc/config/i386=