nvcc 3.2 crash

Hello!

This code makes nvcc crash.

Specifially these lines make it segfault:

int pix_ua_r = pix_lu_r + (i - i_lu * nw / w) * (pix_ru_r - pix_lu_r) / (i_ru * nw / w - i_lu * nw / w);

int pix_ua_g = pix_lu_g + (i - i_lu * nw / w) * (pix_ru_g - pix_lu_g) / (i_ru * nw / w - i_lu * nw / w);

int pix_ua_b = pix_lu_b + (i - i_lu * nw / w) * (pix_ru_b - pix_lu_b) / (i_ru * nw / w - i_lu * nw / w);

	

int pix_da_r = pix_ld_r + (i - i_ld * nw / w) * (pix_rd_r - pix_ld_r) / (i_rd * nw / w - i_ld * nw / w);

int pix_da_g = pix_ld_g + (i - i_ld * nw / w) * (pix_rd_g - pix_ld_g) / (i_rd * nw / w - i_ld * nw / w);

int pix_da_b = pix_ld_b + (i - i_ld * nw / w) * (pix_rd_b - pix_ld_b) / (i_rd * nw / w - i_ld * nw / w);

The crash:

$ nvcc -c -g crash.cu -I /usr/local/gpu-sdk/shared/inc -I /usr/local/gpu-sdk/C/common/inc

crash.cu(63): warning: variable "pix_ld_r" was declared but never referenced

crash.cu(64): warning: variable "pix_ld_g" was declared but never referenced

crash.cu(65): warning: variable "pix_ld_b" was declared but never referenced

crash.cu(63): warning: variable "pix_ld_r" was declared but never referenced

crash.cu(64): warning: variable "pix_ld_g" was declared but never referenced

crash.cu(65): warning: variable "pix_ld_b" was declared but never referenced

Signal: Floating point exception in Code_Expansion phase.

<input>(0): Error: Signal Floating point exception in phase Code_Expansion -- processing aborted

*** Internal stack backtrace:

    /usr/local/cuda/open64/lib//be() [0x830ae36]

    /usr/local/cuda/open64/lib//be() [0x830b814]

    /usr/local/cuda/open64/lib//be() [0x830bba0]

    /usr/local/cuda/open64/lib//be() [0x830b087]

    /usr/local/cuda/open64/lib//be() [0x830be46]

    [0x4001d400]

    /usr/local/cuda/open64/lib//be() [0x81cd1c1]

    /usr/local/cuda/open64/lib//be() [0x81cd921]

    /usr/local/cuda/open64/lib//be() [0x81a07a6]

    /usr/local/cuda/open64/lib//be() [0x81ab75f]

    /usr/local/cuda/open64/lib//be() [0x81ab527]

    /usr/local/cuda/open64/lib//be() [0x81acf0b]

    /usr/local/cuda/open64/lib//be() [0x81abf5f]

    /usr/local/cuda/open64/lib//be() [0x81b0831]

    /usr/local/cuda/open64/lib//be() [0x81b14bc]

    /usr/local/cuda/open64/lib//be() [0x81b1c59]

    /usr/local/cuda/open64/lib//be() [0x818d614]

    /usr/local/cuda/open64/lib//be() [0x804c501]

    /usr/local/cuda/open64/lib//be() [0x804d297]

    /usr/local/cuda/open64/lib//be() [0x804e60b]

    /lib/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0x40184c76]

    /usr/local/cuda/open64/lib//be() [0x804aa81]

nvopencc INTERNAL ERROR: /usr/local/cuda/open64/lib//be died due to signal 4

Version output:

$nvcc --version

nvcc: NVIDIA (R) Cuda compiler driver

Copyright (c) 2005-2010 NVIDIA Corporation

Built on Thu_Oct_14_17:26:40_PDT_2010

Cuda compilation tools, release 3.2, V0.2.1221

I run 32-bit debian:

Linux 2.6.32-4-686 #1 SMP Tue Apr 6 07:02:27 UTC 2010 i686 GNU/

Linux

Any ideas?

Thank you!
crash.cu (5.33 KB)

Get an NVIDIA Developer account (http://nvdeveloper.nvidia.com/) and submit it as a bug report - whatever your code may or may not be doing, the compiler shouldn’t segfault. Then, hope you don’t just get told to upgrade to the latest CUDA beta release.