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

SSA not generating results file

Raj_J_
Beginner
507 Views

I am trying to run the SSA (2013) on a project of ours  in VS 2010. When I build for static analysis the build completes but I do not get a results file. I do have some link warnings (see below):

1>message.obj : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
1>library.obj : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library

Are these warnings preventing the static analysis from running? Is there something I can do about this?

Thanks

Raj

 

0 Kudos
5 Replies
Raj_J_
Beginner
507 Views

 

My linker warnings were a red herring (one of many I ran into).

Turns out that in order for SSA to properly run and generate results you need to have the Interprocedural Optimization (/q[no]ipo) option set to Yes.

Raj

 

0 Kudos
KitturGanesh
Employee
507 Views

Hi Raj,
Firstly, I would like to point out to you that SSA is no longer supported in the Intel Compiler and is presently a deprecated feature. That said, in previous versions where SSA was supported choosing Build Solution For Intel Static Analysis would automatically set up the necessary settings that's needed and it should work and setting ipo wasn't a mandatory setting needed that I recall. So, are you saying that it worked for you after setting ipo for your issue? Thanks.
_Kittur

 

0 Kudos
Raj_J_
Beginner
507 Views

Hi Kittur,

When I chose "Build Solution For Intel Static Analysis" for the first time I was asked to set up the configuration based on an existing configuration. I used the existing debug build config for the project (which had this option turned off). My SSA config appeared to replicate that config and had this option turned off too. Once I manually turned it on, SSA started writing out results.

Also, I am aware that SSA is being dropped in future versions which I think is a shame as we think it can be quite useful. Is Intel thinking of adding in more features to any other application (Inspector etc.) to compensate for this in any way?

Thanks

Raj

 

 

0 Kudos
KitturGanesh
Employee
507 Views

Raj, thanks for confirming that enabling ipo worked. Although SSA follows the same methodology as that of IPO it wasn't mandatory to turn on ipo other than using the diag-enable=sc option or choosing the Build option for SSA from IDE.  I'll let you know if choosing ipo was needed after I confirm with the developers.  Thanks for your feedback on SSA feature being dropped which I'll pass on as well to the product team and update you accordingly.

_Kittur 

0 Kudos
KitturGanesh
Employee
507 Views

Hi Raj,
I checked with our developers and I verified as well that ipo is turned on by default when SSA is enabled. That said, what you encountered could might as well be a bug that needs investigation. If you can attach a test reproducer (a preprocessed file) I can try to reproduce and file an issue with the developers? Of course, as mentioned earlier it's a deprecated feature in the latest release of the compiler. I've passed on your feedback on that feature drop and will update you on any new update accordingly, appreciate much.
_Kittu

0 Kudos
Reply