2010-05-09 4 views
0

나는 부분적으로 LuaObjCBridge를 아이폰에 포팅했다. 대부분의 일들이 작동하지만 여전히 다루어야 할 몇 가지 문제가 있습니다.아이폰의 Lua-Objective-C 브릿지

#define이 -intel 또는 ppc로 정의되는 섹션이 있습니다. ARM 칩이 인텔 또는 ppc에 더 가깝습니까? 지금은

#if defined(__ppc__)||defined(__PPC__)||defined(__powerpc__) 
    #define LUA_OBJC_METHODCALL_INT_IS_SHORTEST_INTEGRAL_TYPE 
    #define LUA_OBJC_METHODCALL_PASS_FLOATS_IN_MARG_HEADER 
    #define LUA_OBJC_POWER_ALIGNMENT 
#elif defined(__i386__)||defined(__arm__)  
    #warning LuaObjCBridge is not fully tested for use on Intel chips. 
    #define LUA_OBJC_METHODCALL_RETURN_STRUCTS_DIRECTLY // Use this or the code was crashing for me for structs LUA_OBJC_METHODCALL_RETURN_STRUCTS_DIRECTLY_LIMIT 
    #define LUA_OBJC_METHODCALL_USE_OBJC_MSGSENDV_FPRET 
    #define LUA_OBJC_METHODCALL_RETURN_STRUCTS_DIRECTLY_LIMIT 8 
    #define LUA_OBJC_INTEL_ALIGNMENT 
#endif 

내가 I386을 추가했지만

+0

직관적으로 ARM은 RISC 아키텍처이기 때문에 PPC에 더 가깝습니다. –

+0

호기심에서 벗어났습니다. iPhone Wax 프로젝트를 보았습니까? http://github.com/probablycorey/wax –

답변

1

내가 당신에게 제공 할 수 있습니다 내가 틀릴 수도 : 여기

는 정의의 대부분은 대부분의 관련 섹션입니다된다 [objc explain]: objc_msgSend_fpret으로 연결하면 LUA_OBJC_METHODCALL_USE_OBJC_MSGSENDV_FPRET과 같은 내용을 이해할 수 있습니다.