MathIsFun0 / Immolate

An OpenCL seed searcher for Balatro.
Other
61 stars 13 forks source link

Analyzer Seed Error #9

Open akumar48 opened 6 months ago

akumar48 commented 6 months ago

With the new analyzer seed filter, got an error about fract function in util.cl being overloadable.

Immolate Beta v1.0.0n.0
Building program...
In file included from C:\Users\mufct\AppData\Local\Temp\\OCL9940T1.cl:1:
In file included from E:\balatro\Immolate\filters/analyzer.cl:2:
In file included from E:\balatro\Immolate\lib/immolate.cl:10:
E:\balatro\Immolate\lib/util.cl:37:8: error: overloaded function 'fract' must have the 'overloadable' attribute
double fract(double f) {
       ^
C:/constructicon\builds\gfx\two\22.20\drivers\compute\build\native\Release\x64\hsail\clc2\ocl-headers\opencl12_builtins.h:13597:40: note: previous overload of function is here
double16 __attribute__((overloadable)) fract(double16 x, __private double16 *iptr);
                                       ^
1 error generated.

error: Clang front-end compilation failed!
Frontend phase failed compilation.
Error: Compiling CL to IR

Fatal CL Error -6 when trying to execute clCreateKernel - Creating OpenCL kernel

With replacing the fract function with:

double __attribute__((overloadable)) fract(double f) {
    return f-floor(f);
}

I get the following error:

E:\balatro\Immolate>immolate -f analyzer -s JNEWIUXW -n1 -p 1 -g 2056
Immolate Beta v1.0.0n.0
Building program...
LLVM ERROR: call to an undefined function "memcpy"

Also, tried with -g 128 with same results.

MathIsFun0 commented 6 months ago

This appears to be an issue with AMD support in general, which I'll try and get fixed at some point in the near future