freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] FT_New_Memory_Face: get error code 2 on arm


From: duhuanpeng
Subject: Re: [ft-devel] FT_New_Memory_Face: get error code 2 on arm
Date: Wed, 14 Mar 2018 15:50:32 +0800

Hi, 
> http://www.keil.com/support/man/docs/armasm/armasm_dom1361289902800.htm

>From this piece code: (ftcalc.c +244)
        return (int32_t)( ( ab + 0x8000L - ( ab < 0 ) ) >> 16 );

this routine seems produce a result of a integer include the bit 16 to bit 
(16+32)
and round up?

Greater than one half   --> +1
Less than one half      --> discard

FT_MulFix  a b

  a x b become a 64bit interger.

 a x b:|B7|B6|B5|B4|B3|B2|B1|B0|
       |xx|xx|B5|B4|B3|B2|xx|xx|

If(|B1|B0| > 0x10000/2) 
  |B5|B4|B3|B2| += 1
  
----->return |B5|B4|B3|B2|

Am I understand this right?

Regards,
duhuanpeng







reply via email to

[Prev in Thread] Current Thread [Next in Thread]