"-march=native -DUSE_XSIMD" doesn't work with polymorphism
Hi Pierre,
As you have successfully predicted, I just ran into another issue again > < So basically, I compiled the following version of transonic_test.py
:
import numpy as np
from transonic import boost, Array, NDim
A = Array[float, NDim(1, 2, 3)]
@boost
def norming(np_array: A):
norm_array = np.linalg.norm(np_array, axis=-1)
return norm_array
with either of the following two commands:
transonic transonic_test.py
and
transonic transonic_test.py -af "-march=native -DUSE_XSIMD"
Seems the first command correctly produced the expected code, whereas the second one ran into trouble. The error message is as follows:
ERROR Error! File /Users/jw598/Desktop/__pythran__/transonic_test_07b266ff974f5f
d62a84a1e7eee777da.cpython-37m-darwin.so has not been created by pythran
Pythran stderr:
WARNING: Compilation error, trying hard to find its origin...
WARNING: Nop, I'm going to flood you with C++ errors!
CRITICAL: Cover me Jack. Jack? Jaaaaack!!!!
E: error: Command "g++ -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g
-fwrapv -O3 -Wall -I/Users/jw598/miniconda3/include -arch x86_64
-I/Users/jw598/miniconda3/include -arch x86_64 -I/usr/local/opt/openblas/include
-DENABLE_PYTHON_MODULE -D__PYTHRAN__=3 -DUSE_XSIMD -DPYTHRAN_BLAS_OPENBLAS
-I/usr/local/opt/openblas/include
-I/Users/jw598/miniconda3/lib/python3.7/site-packages/pythran
-I/Users/jw598/miniconda3/lib/python3.7/site-packages/numpy/core/include
-I/Users/jw598/miniconda3/include/python3.7m -c /tmp/tmpcul5xuab.cpp -o
/tmp/tmpdmlmq4my/tmp/tmpcul5xuab.o -std=c++11 -fno-math-errno -w -march=native" failed
with exit status 1
I'm wondering if this is a bug, or the code should not be compiled this way when Array
type is used?
Thanks, Jingyang