Skip to content
Snippets Groups Projects
Commit 68a82807 authored by 고예준's avatar 고예준
Browse files

Update fx_1615_longlong.h_div02와 div03 순서 수정

parent 4aaa35bc
No related branches found
No related tags found
No related merge requests found
...@@ -11,24 +11,23 @@ typedef long long fixed64; ...@@ -11,24 +11,23 @@ typedef long long fixed64;
// 32 bit 컴퓨터인데 성능이 중요하다면 MUL2나 MUL3 사용 // 32 bit 컴퓨터인데 성능이 중요하다면 MUL2나 MUL3 사용
#define FX_1615_LONGLONG_MUL2(a, b) ((a) * (b)) >> 15 #define FX_1615_LONGLONG_MUL2(a, b) ((a) * (b)) >> 15
#define FX_1615_LONGLONG_MUL3(a, b) ((a >> 8) * (b >> 7)) #define FX_1615_LONGLONG_MUL3(a, b) ((a >> 8) * (b >> 7))
#define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15) //#define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15)
#define FX_1615_LONGLONG_DIV02(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b)) //#define FX_1615_LONGLONG_DIV02(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b))
// #define FX_1615_LONGLONG_DIV03(a,b) (fx_s1615)(((fixed64)((a) << 15) / b)) // #define FX_1615_LONGLONG_DIV03(a,b) (fx_s1615)(((fixed64)((a) << 15) / b))
// #define FX_1615_LONGLONG_DIV04(a,b) (fx_s1615)((((fixed64)(a << 4) / (b >> 4)) << 7)) // #define FX_1615_LONGLONG_DIV04(a,b) (fx_s1615)((((fixed64)(a << 4) / (b >> 4)) << 7))
// #define FX_1615_LONGLONG_DIV05(a,b) ((((a) << 8) / (b)) << 7) // #define FX_1615_LONGLONG_DIV05(a,b) ((((a) << 8) / (b)) << 7)
// #define FX_1615_LONGLONG_DIV11(a,b) (((a << 7) / (b >> 4)) << 4) // DIV2 속도 테스트 2위 // #define FX_1615_LONGLONG_DIV11(a,b) (((a << 7) / (b >> 4)) << 4) // DIV2 속도 테스트 2위
// #define FX_1615_LONGLONG_DIV06(a,b) ((a) / ((b) >> 15)) // #define FX_1615_LONGLONG_DIV06(a,b) ((a) / ((b) >> 15))
// #define FX_1615_LONGLONG_DIV07(a,b) (((a << 8) / (b >> 4)) << 3) // DIV2 속도 테스트 1위 // #define FX_1615_LONGLONG_DIV07(a,b) (((a << 8) / (b >> 4)) << 3) // DIV2 속도 테스트 1위
// #define FX_1615_LONGLONG_DIV08(a,b) ((a << 8) / (b >> 7)) // #define FX_1615_LONGLONG_DIV08(a,b) ((a << 8) / (b >> 7))
// #define FX_1615_LONGLONG_DIV09(a,b) (((a << 4) / (b >> 4)) << 7) // DIV2 속도 테스트 3위 // #define FX_1615_LONGLONG_DIV09(a,b) (((a << 4) / (b >> 4)) << 7) // DIV2 속도 테스트 3위
// #define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15) // #define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15)
// #define FX_1615_LONGLONG_DIV02(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b)) // #define FX_1615_LONGLONG_DIV02(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b))
#define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15) #define FX_1615_LONGLONG_DIV01(a,b) (fx_s1615)((fixed64)((a >> 15) / (b >> 15)) << 15)
#define FX_1615_LONGLONG_DIV02(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b)) #define FX_1615_LONGLONG_DIV02(a,b) (((a << 5) / (b >> 6)) << 4) // DIV2 속도 테스트 4위
#define FX_1615_LONGLONG_DIV03(a,b) (((a << 5) / (b >> 6)) << 4) // DIV2 속도 테스트 4위 #define FX_1615_LONGLONG_DIV03(a,b) (fx_s1615)(((fixed64)(a) << 15) / (b))
//#define FX_1615_LONGLONG_DIV10(a,b) (((a << 5) / (b >> 6)) << 4) // DIV2 속도 테스트 4위 //#define FX_1615_LONGLONG_DIV10(a,b) (((a << 5) / (b >> 6)) << 4) // DIV2 속도 테스트 4위
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment