This site is no longer active and is available for archival purposes only. Registration and login is disabled.

16.16 multiplies and __int64


16.16 multiplies and __int64

Postby jmX » Feb 9, 2005 @ 5:10am

jmX
pm Member
 
Posts: 31
Joined: Oct 9, 2004 @ 3:18am
Location: Austin, TX


Postby refractor » Feb 9, 2005 @ 6:57am

Both the XScale and StrongARM have both signed and unsigned native 64-bit multiplies (i.e. two 32-bit operands and a 64-bit result).

I never actually looked at GPP much, but if it's calling it a function then that's why it's slower.
User avatar
refractor
pm Insider
 
Posts: 2304
Joined: Feb 5, 2002 @ 1:12pm
Location: Luxembourg


Postby jmX » Feb 9, 2005 @ 7:19am

jmX
pm Member
 
Posts: 31
Joined: Oct 9, 2004 @ 3:18am
Location: Austin, TX


Postby Structure » Feb 9, 2005 @ 4:30pm

A float, A float, My kingdom for a float
User avatar
Structure
pm Member
 
Posts: 147
Joined: Sep 17, 2004 @ 8:28pm
Location: UK


Postby Tala » Feb 10, 2005 @ 2:00am

Tala
pm Member
 
Posts: 125
Joined: Feb 6, 2004 @ 4:32pm


Postby Kzinti » Feb 10, 2005 @ 2:25am

Kzinti
pm Member
 
Posts: 3238
Joined: Jan 13, 2002 @ 5:23am


Postby Dan East » Feb 10, 2005 @ 5:09am

User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby jmX » Feb 10, 2005 @ 7:42am

jmX
pm Member
 
Posts: 31
Joined: Oct 9, 2004 @ 3:18am
Location: Austin, TX


Postby Dan East » Feb 10, 2005 @ 8:13am

User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby Kzinti » Feb 10, 2005 @ 10:00am

Kzinti
pm Member
 
Posts: 3238
Joined: Jan 13, 2002 @ 5:23am


Postby jmX » Feb 10, 2005 @ 10:45am

jmX
pm Member
 
Posts: 31
Joined: Oct 9, 2004 @ 3:18am
Location: Austin, TX


Postby Dan East » Feb 10, 2005 @ 3:06pm

User avatar
Dan East
Site Admin
 
Posts: 5264
Joined: Jan 25, 2001 @ 5:19pm
Location: Virginia, USA


Postby Kzinti » Feb 10, 2005 @ 5:12pm

Kzinti
pm Member
 
Posts: 3238
Joined: Jan 13, 2002 @ 5:23am


Postby jmX » Feb 10, 2005 @ 11:12pm

The reason I wrote them as macros first was to make sure they were inlining. I also wrote everything as inline functions and I have an ifdef to swap back and forth between the two so that I can verify at any point in time the compiler is doing as it should (since I'll be using a few compilers on this code).

If one compiler ends up not acting like it should I can always set it up to use the macro versions rather than the inline function versions.

My fixedpoint test function that tests to make sure all the code works also times it so its easy to make sure the performance stays the same (and at least with eVC, the timer seems to be nearly exactly the same between the two versions, give or take a small margin of error).

Ive not tried it with GCC yet, that'll be next week when I try and move all this code over to the phone platform.
Last edited by jmX on Feb 11, 2005 @ 9:35am, edited 1 time in total.
jmX
pm Member
 
Posts: 31
Joined: Oct 9, 2004 @ 3:18am
Location: Austin, TX


Postby Andy » Feb 11, 2005 @ 12:18am

see: __forceinline
Andy
<font color=red size=3>Troll++</font>
 
Posts: 1288
Joined: Nov 1, 2003 @ 7:36am


Next

Return to Windows Mobile


Sort


Forum Description

A discussion forum for mobile device developers on the Windows Mobile platform. Any platform specific topics are welcome.

Moderators:

Dan East, sponge, Digby, David Horn, Kevin Gelso, RICoder

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum