착각한 것..

성진모 2007.04.10 02:54 조회 수 : 4541 추천:100

스터디때 제가 좀 집중을 안한 것 같아 다시 보고 있는데..
착각한 걸 하나 발견해서 올립니다.

__start_initialization_multiplatform 함수를 보면
CPU version 확인해서 각각 그에 맞는 분기문으로 뛰게 되어있는데..
우린 970, 970FX, 970MP의 경우는 __cpu_preinit_ppc970으로 뛰고
970GX의 경우는 패스한다고 이해했죠..

하지만 소스를 자세히 보니 안그러네요
970GX의 경우도 똑같이 __cpu_preinit_ppc970으로 뛰네요

970, 970FX, 970MP 의 경우는 beq 1f (같으면 1 로 뛰죠)
970GX 의 경우는 bne 2f(다르면 2 로 뛰죠. 그러니 같으면 바로 다음 줄인 1 로..)

마지막에 bne로 해둔건.. 위의 조건 모두 해당안될때도 __cpu_preinit_ppc970 로
뛰는 것을 방지하려한 것으로 보이네요

추신)SPRN_PVR의 값인 0x11F는 p.438에 나와있네요..(강냉군이 찾아낸;;)
XE Login