Jump to content
  • Advertisement
Sign in to follow this  
matt77hias

warning X4715

Recommended Posts

Apparently I obtain some:
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]
         FXC : warning X4715: emitting a system-interpreted value which may not be written in every execution path of the shader [C:\projects\mage\MAGE\MAGE.vcxproj]

in debug mode. Unlike other warnings, I do not receive any file and/or line information from FXC. I tracked these warnings down in my Appveyor history, but it does not make sense (I just changed some markdown file and since then these warnings are always there in debug mode.)

 

I noticed that my debug mode uses "enable debugging information", what does that mean exactly for my shaders? Do I pay some performance and/or bytes for this (otherwise, I could use this for release as well)?

Edited by matt77hias

Share this post


Link to post
Share on other sites
Advertisement

debug information for shaders are useful to debug ( pushing at open doors here ) :) It is also useful to reverse engineer other people work ( at least the reflection data most don't remove ) ! For your shipped data, you should use D3DStripShader to strip everything ( debug + reflection ).

In term of runtime performance, unless you change other compilation flags like favor branch and disable optimization, generation of debug info is not a problem. Even optimization of the DXBC not always a good idea, as it can obfuscate logic and lead to sub-optimal uCode in the driver compilation ( but it is mostly unpredictable so :( ), but it is another story.

You can also generate the debug information, extract the PDB part of the shader blob, write it in a dev only folder and just inject the file PDB name in the shader blob to let PIX/RenderDoc find it.

Edited by galop1n

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!