Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

IPO causes sigsegv on my code

alex_belousov
Beginner
246 Views
Hi,
I try to replace gcc with icc for a commertial product. Having tool compiled without ipo I get ~ same performance.
The onlOnce I set ipo tool starts crashing. I can't figure out code -> sigsegv relationship. It looks like this pointer within a method call is broken.
Valrgind reports several UMR and then ABW causes sigsegv.
Once I switch off ipo valgrind shows nothing.
Are there any guidelines to debug such case?
Thanks,
Alex
0 Kudos
3 Replies
TimP
Honored Contributor III
246 Views
IPO definitely aggravates the effects of storing data outside defined regions. As you say, it doesn't necessarily improve performance.
0 Kudos
alex_belousov
Beginner
246 Views
Quoting - tim18
IPO definitely aggravates the effects of storing data outside defined regions. As you say, it doesn't necessarily improve performance.
I'm not sure if I get you correctly. My issue is that I get sigsegv with IPO. Is there any RTFM on IPO code compatibility or at least KPNS?

0 Kudos
TimP
Honored Contributor III
246 Views
If you have a buffer overflow, it will have worse consequences with IPO set. RTFM is don't set IPO until your code is clean.
0 Kudos
Reply