Open Infinoid opened 2 years ago
Here's how I tested the parts I could. It's based on a shell script embedded within the xcode project file.
#!/bin/bash
set -ex
c++ reaction_diffusion_2_generator.cpp ../../../tools/GenGen.cpp \
-std=c++17 \
-fno-rtti \
-I ../../../build/include \
-I ../../../tools \
-L ../../../build/lib \
-L ../../../build/src \
-lHalide \
-Wl,-rpath,../../../build/lib \
-Wl,-rpath,../../../build/src \
-o ./reaction_diffusion_2_generator
echo assuming iOS target
TARGET=arm-64-ios
echo TARGET=$TARGET
#non-GPU
for GEN in init update render; do
./reaction_diffusion_2_generator -g reaction_diffusion_2_${GEN} -f reaction_diffusion_2_${GEN} -n reaction_diffusion_2_${GEN} -o . target=${TARGET}-user_context
done
# Metal
for GEN in init update render; do
./reaction_diffusion_2_generator -g reaction_diffusion_2_${GEN} -f reaction_diffusion_2_metal_${GEN} -n reaction_diffusion_2_metal_${GEN} -o . target=${TARGET}-metal-user_context
done
Based on gitter discussion, the HelloiOS app seems to have developed some bit-rot.
Here are the issues I see:
HalideRuntime.h
,HalideRuntimeMetal.h
,HalideBuffer.h
.gpu_tile()
now requires caller to specify inner Vars/RVarsCan't split RVar r37$x into Var v2
due to unnamed Vars & RVarsI think that at a minimum, this fix is needed:
I don't have xcode or an iOS device, so I can't test any further than building/generating the Halide pipelines. But after applying the above fix, apparently this failure occurs at runtime:
Assertion failed: (i >= 0 && i < this->dimensions()), function dim, file HalideBuffer.h, line 496.