- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I will investigate and give you and update soon.
Thanks,
Shenghong
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Jose,
I can reproduce your issue with a simple test case such as:
int main() {return 0;}
I think it should be kind of a bug. I will report it to our tracking systerm and give you an update if I get any feedback.
Thanks,
Shenghong
Intel Developer Support
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When the user specifies conflicting options such as -O0 (do not optimize) and -xAVX (optimize for a specific processor) the outcome of the conflict is unpredictable.
I would find it reasonable if the compiler ignored -xAVX after noting -O0 to be in effect.
You can use the -# compiler option to see which options survive the conflict and are passed on to the compiler mcpcom or fortcom (the actual names depend on the platform).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi mecej4,
I agree with your opinions. The compiler may ignore the -xAVX option when using -O0 to disable optimization. What I was thinking is whether there is a friendly way here, such as giving a warning. I think as these are conflicting options, it is better to let the user be aware of it.
Thanks,
Shenghong
Intel Developer Support
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Om
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"option -xx conflicts with option -yy, resolved by ignoring -xx"
However, "If one tells the compiler to compile for a specific platform one would not expect it to compile for a diferent platform" is too harsh.
The compiler does output code for the specific platform in that it will only use instructions available on that platform. However, it need not use all available instructions, especially the more complex instructions, which may or may not exist on other platforms, when simpler instructions (which may be common to a whole family of processors) will do. This is very much in the realm of the optimizer, and -O0 may bypass the optimizer.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
FYI.
many customers rely on -O0 to no generate any external library references. The cpu check is done by creating a call to libirc in main. If we added this call at -O0, it would potentially break a lot of customer code.
Closing as not a defect.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page