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

ICC 10.1 inline assembler weirdness

levicki
Valued Contributor I
466 Views

I noticed that latest ICC 10.1 generates long conditional jumps where short ones would suffice even if you write jz short label (I am talking about inline assembler code). For example it spits out 0F 84 20 00 00 00 instead of 74 24 which clearly doesn't make any sense. Any ideas?

0 Kudos
7 Replies
levicki
Valued Contributor I
466 Views

Can someone from Intel please tell me if what I am seeing here is intended behavior or not? Has anyone else seen this?

0 Kudos
levicki
Valued Contributor I
466 Views

Nice to see that there is no one around to help me a bit when I need it.

That fact combined with the latest bugs introduced into the forum software by incapable administrators (no edit button, editing kills attachment,

 font not fixed width) really kills my motivation to hang around here and help other people.

0 Kudos
JenniferJ
Moderator
466 Views

Hi Igor,

We've tried several cases trying to duplicate the problem, but no success. Could you send yourtestcase? andwhat the compile options used. If you like, you can send to Premier Support

0 Kudos
JenniferJ
Moderator
466 Views

Hi Igor,

We've tried several cases trying to duplicate the problem, but no success. Could you send yourtestcase? andwhat the compile options used. If you like, you can send to Premier Support for

0 Kudos
JenniferJ
Moderator
466 Views

Hi Igor,

We've tried several cases trying to duplicate the problem, but no success. Could you send yourtestcase? andwhat the compile options used. If you like, you can send to Premier Support for secority r

0 Kudos
JenniferJ
Moderator
466 Views

Hi Igor,

We've tried several cases trying to duplicate the problem, but no success. Could you send yourtestcase? andwhat the compile options used. If you like, you can send to Premier Support for security reason.

0 Kudos
levicki
Valued Contributor I
466 Views

Here you go, number of NOPs between jumps corresponds with actual instruction sequence lengths in our code. Should work with any compiler options, I have tested using ICC 10.1.021 IA32 for Windows. Use /c /FAc to get the .cod file and check those JE encodings. I have submitted it to the Premier support (#481387).

0 Kudos
Reply