Eigen - maxCoeff导致编译器崩溃

时间:2014-08-18 14:38:48

标签: c++ compiler-errors clang++

我正在使用库Eigen进行一些带矩阵的高性能计算,我希望从定义为centers的矩阵Eigen::MatrixXi centers(A.rows(), 1);中获取最大元素(其中A也是一个矩阵)。出于这个原因,我打电话给

std::cout << centers.maxCoeff();

但是当我尝试使用clang ++(版本3.5)编译它时,makefile正在执行

clang++ -shared -fPIC build/snf.bc -o snf.so

编译器给了我这个错误信息:

clang++ -shared -fPIC build/snf.bc -o snf.so
fatal error: error in backend: Cannot select: 0x4815390: v4i32 = X86ISD::SMAX 0x4812860, 0x4979e70 [ORD=20] [ID=23]
  0x4812860: v4i32 = bitcast 0x4a2be70 [ORD=17] [ID=22]
    0x4a2be70: v2i64,ch = load 0x4812660, 0x4812960, 0x496fb30<LD16[%1]> [ORD=17] [ID=21]
      0x4812960: i64 = FrameIndex<0> [ID=6]
      0x496fb30: i64 = undef [ID=3]
  0x4979e70: v4i32 = bitcast 0x4a2c270 [ORD=19] [ID=16]
    0x4a2c270: v2i64,ch = load 0x4a2c170, 0x4812c60, 0x496fb30<LD16[%7]> [ORD=13] [ID=14] dbg:/usr/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h:194:10
      0x4812c60: i64,ch = CopyFromReg 0x2d19a10, 0x4813060 [ORD=8] [ID=11]
        0x4813060: i64 = Register %vreg3 [ID=4]
      0x496fb30: i64 = undef [ID=3]
In function: _ZN5Eigen8internal4pmaxIDv2_xEET_RKS3_S5_
clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
Ubuntu clang version 3.5-1ubuntu1 (trunk) (based on LLVM 3.5)
Target: x86_64-pc-linux-gnu
Thread model: posix

请你能给我任何建议可能是什么问题吗?我之前从未遇到内部编译错误。

0 个答案:

没有答案