http://randomascii.wordpress.com/2013/09/11/debugging-optimized-codenew-in-visual-studio-2012/

http://blogs.microsoft.co.il/sasha/2011/10/12/debugging-optimized-code-in-visual-studio-11/


/d2Zi+


옵션 하나만 켜 주면 됨... 단 공식적으로 지원한다기보다 MS내부에서만 사용하던 옵션인듯 하여 VS에는 어떠한 언급 혹은 지원 문서도 없음

사용해본 결과 pdb만 바꾸는 것 같고 exe에는 손안대는 듯하니 써먹는데는 전혀 문제가 없겠다.


d2ziplus.png


참 쉽죠? -_-;;;;;;


라고 생각했으나 개뿔 안됨...-_-; 이상한 빌드 에러남.

그래서


zi.png


d2ziplus2.png


이렇게 하면 됨...


다음은 간단한 테스트임


vs1.png 

테스트 코드. 코드에 너무 의미는 두지말자.




vs2.png 

요건 /Zi 옵션만 준것. 여지없이 스택 변수는 보이지 않음.




vs3.png

이것은 /Zi 에 /d2Zi+ 를 같이 준 것. 오오 res변수값이 보인다. 최적화 다 켜져 있는 상태인데!!!

단 컴파일러가 최적화를 위해 날려버린 변수들은 [변수가 최적화땜에 날라가서 볼수 없음요] 라고 친절하게 왓치창에 표시해 준당.

위의 for문 또한 루프 불변식(은 사실 아닌것 같은데 최적화를 통해 불변식으로 통짜로 계산한 후 루프는 쿨하게 넘김) 최적화에 의해 날아감.


잘 써먹을 수 있으면 좋겠다...




댓글 0

파일 첨부

여기에 파일을 끌어 놓거나 파일 첨부 버튼을 클릭하세요.

파일 크기 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
 
목록
번호 제목 글쓴이 날짜 조회 수
4 Large Address Aware file 단장 2014.03.05 1948
» VC 2012이후에서 릴리즈 빌드 스택변수들 디버깅하기 file 단장 2014.03.05 401
2 진 여신전생 스트레인지 저니 에디터 코드 단장 2015.06.18 369
1 문길 설치법 단장 2017.04.19 179