Admin | Write | GuestBook
[공지] 해당 블로그에 용건이 있으신 분께서는 http://blog.fore.kr/ 의 방명록(Guestbook)으로 부탁드립니다.
너무나 뛰어난 최적화 기능.

 

 

Visual Studio 2013 의 너무나 뛰어난 최적화 기능에 감탄을 금치 못했습니다.

( 작년까지만해도 2008 을 사용하고 있어서 전혀 몰랐습니다만... )

 

Thread Local Storage(TLS) 를 넣었는데, 이것이 최적화되어 사라져버리는 현상이 일어났습니다 !

 

문제의 코드

 

 

 #include <windows.h>

 

 #pragma comment(linker,"/INCLUDE:__tls_used")

 

 void __stdcall callback_func(...){

     MessageBoxA(NULL,"Hello world",NULL,MB_OK);

 }

 

 #pragma data_seg(".CTR$XLB")

   PIMAGE_TLS_CALLBACK p_tls = callback_func;

 #pragma data_seg()

 

 int main(void){

   system("pause");

   return 0;

 }

 

 

혹시 문제를 발견하셨나요 ?

 

문제는 . . .

 

프로그램 진입점(main) 함수 이하로 p_tls 변수가 사용된 흔적이 없어

 

p_tls 변수와 callback_func 함수가 최적화로 사라집니다 !!

 

이 너무나 훌륭한 최적화 기능에 1시간동안 씨름에 붙었습니다 -_- ; ; ;

 

 

해결 방법은 ?

 

 

솔루션 탐색기 창을 통해 단일 파일의 경우 위와 같이 파일 하나를 오른쪽 마우스 클릭하거나

 

프로젝트 혹은 솔루션 크기일 경우 프로젝트나 솔루션을 오른쪽 마우스 클릭해서

 

속성을 들어간 후

 

 

'C/C++ > 최적화 > 전체 프로그램 최적화' 를 '예(/GL)' 에서 '아니요' 로 변경하시면 됩니다.

 

애니, 미연시, 프로그래밍 관련 블로그
Category
분류 전체보기 (605)
Notice (6)
About Me (1)
Programming (79)
Release Program (19)
Release Patch (14)
Programming Talk (46)
DISKER (1)
Release (1)
FSCH (7)
Core Release (1)
Plugin Release (6)
Dev. (0)
Caption (0)
러브 라이브 ! 1기 (0)
러브 라이브 ! 2기 (0)
B형 H계 (0)
프린세스 러버 ! (0)
etc... (0)
Rest Time ! (443)
Monologue (412)
Copy to Posting~ (31)
Hobby (64)
MYS-☆ (27)
Mahjong (12)
Animation (3)
Light Novel (0)
Blog skin (22)
Tour (5)
2013 Feb in Tokyo (5)
2014 Working Holiday JP (0)
2015 Aug in Tokyo (0)
2016 Dec in Osaka (0)
Blind Post (0)
Recent Post
Recent Comment
Link
Calender
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Total :
Today :
Yesterday :