public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug jit/107849] New: All SIMD instrinsics are missing
@ 2022-11-23 19:21 andreas_roever at web dot de
  2022-11-23 21:08 ` [Bug jit/107849] " rguenth at gcc dot gnu.org
  0 siblings, 1 reply; 2+ messages in thread
From: andreas_roever at web dot de @ 2022-11-23 19:21 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107849

            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=53956&action=edit
A simple example showing the problem

It seems like the jit library only provies builtin functions for the "standard"
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 sqrt
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. 

When VECTOR is defines everything gets redefined to use an 256bit vector with 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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Bug jit/107849] All SIMD instrinsics are missing
  2022-11-23 19:21 [Bug jit/107849] New: All SIMD instrinsics are missing andreas_roever at web dot de
@ 2022-11-23 21:08 ` rguenth at gcc dot gnu.org
  0 siblings, 0 replies; 2+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-11-23 21:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107849

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2022-11-23
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
There is unfortunately no common way different targets implement builtins.  It
might in theory be possible to iterate through them via targetm.builtin_decl
though.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-11-23 21:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-23 19:21 [Bug jit/107849] New: All SIMD instrinsics are missing andreas_roever at web dot de
2022-11-23 21:08 ` [Bug jit/107849] " rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).