이런게 있네... ㅡ_ㅡ;;;
83a8: e3a00006 mov r0, #6 ; 0x6
83ac: eaffffff b 83b0
83b0: e91ba800 ldmdb fp, {fp, sp, pc}
내가 C 소스 코드에서 무엇을 했는고 하니.. ㅡ_ㅡ;;;
return 6;
했더랬다. 저 어셈코드를 보면, 사실 mov r0, #6를 하고 ldmdb fp, {fp, sp, pc} 하면
될것을 return 을 했다고 폴짝 바로 아랫줄로 뛰어들고 있음을
"확인"
할 수 있다. 얼래.. ㅡ_ㅡ;;; 머지.. 저런식으로 코드를 생성하면 먼가 이득이 있나??
아님 내가 멀 잘못알고 있는건가??
설마 brench 명령으로 CPU Cache를 Flush하는 그런 말도안되는.. ㅡ_ㅡ;;;;;
내가 써놓고도 좀 말이 안되는거 같네. 만약 Flush를 위함이라하면 brench가 도배되
어야 정상이지......
O1을 줘서 약간의 Optimizing을 하면.. 아래와 같은 결과가 나온다.
8310: e3a00001 mov r0, #6 ; 0x6
8314: e91ba800 ldmdb fp, {fp, sp, pc}
컥.. brench가 온데간데 없다. @0@/~
이.. 이럴수가..
머
지
이
건
??
83a8: e3a00006 mov r0, #6 ; 0x6
83ac: eaffffff b 83b0
83b0: e91ba800 ldmdb fp, {fp, sp, pc}
내가 C 소스 코드에서 무엇을 했는고 하니.. ㅡ_ㅡ;;;
return 6;
했더랬다. 저 어셈코드를 보면, 사실 mov r0, #6를 하고 ldmdb fp, {fp, sp, pc} 하면
될것을 return 을 했다고 폴짝 바로 아랫줄로 뛰어들고 있음을
"확인"
할 수 있다. 얼래.. ㅡ_ㅡ;;; 머지.. 저런식으로 코드를 생성하면 먼가 이득이 있나??
아님 내가 멀 잘못알고 있는건가??
설마 brench 명령으로 CPU Cache를 Flush하는 그런 말도안되는.. ㅡ_ㅡ;;;;;
내가 써놓고도 좀 말이 안되는거 같네. 만약 Flush를 위함이라하면 brench가 도배되
어야 정상이지......
O1을 줘서 약간의 Optimizing을 하면.. 아래와 같은 결과가 나온다.
8310: e3a00001 mov r0, #6 ; 0x6
8314: e91ba800 ldmdb fp, {fp, sp, pc}
컥.. brench가 온데간데 없다. @0@/~
이.. 이럴수가..
머
지
이
건
??
'OS Kernel' 카테고리의 다른 글
"아키텍트를 꿈꾸는 사람들" 스터디에서 발표할 자료~!! (14) | 2012.01.07 |
---|---|
OS 개발 시 참고하면 유용한 책과 사이트 리스트 (0) | 2011.11.20 |
[ARM] 어?? 글고보니 Interrupt Vector Remapping은 어떻게 하는거지?? (1) | 2004.11.29 |
[ARM] ldmia lr!, { r0 - r12, pc}^ (0) | 2004.11.27 |
[ARM] 오우~ OS Timer를 이용한 Task Switching !! (0) | 2004.11.27 |