Tool/software: TI C/C++ Compiler
Hello,
I compiled an applicaton with openmp and forgot to declare a global variable for the target section.
Then gcc and clacc produce the target code which is then compiled with cl6x. With my code cl6x crashes
because of a global varable not declared in the omp target section.
Since my code is very large, I wrote a little c-File, that causes the same problems with the cl6x compiler.
The original error message is:
INTERNAL ERROR: /home/mv/ti-processor-sdk-linux-rt-am57xx-evm-03.03.00.04/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/acpia6x experienced a segmentation fault
while processing function (unknown or file scope) file (unknown) line 0
This is caused by a defect in the compiler itself. TI Customer
Support may be able to suggest a workaround to avoid this.
Upgrading to the newest version of the compiler may fix this problem.
Contact TI in the E2E support forums at http://e2e.ti.com under
"Development Tools", "TI C/C++ Compiler". See the link titled
"Submitting an issue". Include this ENTIRE error message and a
copy of the .pp file created when option --preproc_with_comment
(-ppc) is used.
Then I took the preprocessed c-code and deleted code element by element and at the end I got the following code, which can be used
to reproduce the error, when compiled with the command at the end (I used the cl6x that was included in the linux sdk 05.01.00.11):
extern int glob;
#pragma omp declare target
void hello()
{
int loc= glob;
}
#pragma omp end declare target
/*
copile with
#!/bin/bash
${HOME}/ti-processor-sdk-linux-rt-am57xx-evm-05.01.00.11/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/cl6x --openmp:device -ppa -mv6600 <NameOfThisFile>
*/
I hope that you can fix this bug and make cl6x print a useful error message.
Regards,
Stephan