Showing changes from revision #1 to #2:
Added | Removed | Changed
Warning: The current and/or previous revision contained markup errors which prevented proper diff analysis. A guess at markup correction has been made but the diff may not be a truly accurate reflection of the real changes.
Entry | |
---|---|
R0 | Flags (reserved for future use, set to 0) |
Exit | |
---|---|
R0 | Number of functions provided by this version of VFPSupport |
R1 | Pointer to branch table for single precision functions |
R2 | Pointer to branch table for double precision functions |
All other registers preserved |
This call returns tables of VFP implementations of the elementary functions, jumping to the Nth table entry will run on one of the following functions which are given their C standard function names for convenience here, but other languages may give them different names:
Table entry | C name | Equivalent FPA op | Equivalent VFP op |
---|---|---|---|
0 | sin(x) | SIN | – |
1 | cos(x) | COS | – |
2 | tan(x) | TAN | – |
3 | asin(x) | ASN | – |
4 | acos(x) | ACS | – |
5 | atan(x) | ATN | – |
6 | atan2(y,x) | POL | – |
7 | log(x) | LGN | – |
8 | log10(x) | LOG | – |
9 | exp(x) | EXP | – |
10 | pow(x,y) | POW | – |
11 | fma(x,y,z) | – | VFMA |
When calling the above functions, the following rules apply:
In the event of an exception during calculations, the corresponding FPSCR cumulative flags bits will be updated and optionally a floating point error thrown if enabled in the exception trap bits.