All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joshua Lamorie <jpl@xiphos.ca>
To: Joshua Lamorie <jpl@xiphos.ca>
Cc: Wolfgang Grandegger <wolfgang.grandegger@bluewin.ch>,
	rtai@rtai.org, linuxppc-embedded@ozlabs.org
Subject: Re: Unhandled relocation of type 11
Date: Fri, 08 Apr 2005 10:08:12 -0400	[thread overview]
Message-ID: <4256904C.6080703@xiphos.ca> (raw)
In-Reply-To: <425541C8.6060408@xiphos.ca>

[-- Attachment #1: Type: text/plain, Size: 972 bytes --]

Yes, this fix appeared to work.  It looks like there are just four 
14-bit references:

ppc_ftoui.S:56:     blt     __fixsfsi               /* return directly 
from there */     
ppc_ftoui.S:61:     blt     __fixsfsi               /* return directly 
form there */
ppc_dtoui.S:63:     blt     __fixdfsi
ppc_dtoui.S:73:     blt     __fixdfsi

I've sent an email to the sourceforge maintainer, but I haven't heard 
anything yet.  It's a great library, it greatly improves FP 
performance.  Anyone else been using it?  Any problems?

My fix is attached.

Joshua

-- 

Xiphos Technologies
(514) 848-9640 x227
(514) 848-9644 fax

www.xiplink.com
_______________________________________________
The information transmitted is intended only for the
person or entity to which it is addressed and may contain
confidential and/or privileged material.  If you have
received this in error, please contact the sender and delete
this communication and any copy immediately. Thank you.


[-- Attachment #2: fptoui_module.patch --]
[-- Type: text/plain, Size: 2514 bytes --]

--- perflibs.orig/fpopt/ppc_dtoui.S	2003-12-12 15:38:02.000000000 -0500
+++ perflibs/fpopt/ppc_dtoui.S	2005-04-08 10:03:19.629210784 -0400
@@ -53,14 +53,26 @@ function_prolog(__fixunsdfsi)
 
 /* For negative numbers, just convert to signed integer */
      or.     r3,r3,r3      
-     blt     __fixdfsi               /* return directly from there */      
+#if defined(__KERNEL__) && defined(MODULE)
+     bge     positive
+     bl     __fixdfsi               /* return directly from there */      
+#else
+     blt     __fixdfsi
+#endif
      
+positive:	     
      rlwinm  r8,r3,12,0x000007FF      /* extract exponent */
 /* For numbers less than maximum positive signed integer, convert normally */     
      cmpwi   r8, 0x041e     
-     blt     __fixdfsi               /* return directly form there */
+#if defined(__KERNEL__) && defined(MODULE)
+     bge     overmax 
+     bl     __fixdfsi               /* return directly form there */
+#else
+     blt     __fixdfsi
+#endif
      
 /* Create stack frame, just to save link register! */
+overmax:
      mflr    r0                      /* save link register in caller's stack */
      stw     r0,4(r1)               
      stwu    r1,-STACKSIZE(r1)       /* set up stack frame to hold saved regs */
--- perflibs.orig/fpopt/ppc_ftoui.S	2003-12-12 15:38:02.000000000 -0500
+++ perflibs/fpopt/ppc_ftoui.S	2005-04-08 10:06:46.155813968 -0400
@@ -53,14 +53,26 @@ function_prolog(__fixunssfsi)
 
 /* For negative numbers, just convert to signed integer */
      or.     r3,r3,r3      
-     blt     __fixsfsi               /* return directly from there */      
+#if defined(__KERNEL__) && defined(MODULE)
+     bge     positive
+     bl      __fixsfsi               /* return directly from there */      
+#else
+     blt     __fixsfsi
+#endif	
      
+positive:
      rlwinm  r8,r3,9,0x000000FF      /* extract exponent */
 /* For numbers less than maximum positive signed integer, convert normally */     
      cmpwi   r8, 0x009e     
-     blt     __fixsfsi               /* return directly form there */
+#if defined(__KERNEL__) && defined(MODULE)
+     bge     overmax 
+     bl      __fixsfsi               /* return directly form there */
+#else
+     blt     __fixsfsi
+#endif
      
 /* Create stack frame, just to save link register! */
+overmax:
      mflr    r0                      /* save link register in caller's stack */
      stw     r0,4(r1)               
      stwu    r1,-STACKSIZE(r1)       /* set up stack frame to hold saved regs */

      reply	other threads:[~2005-04-08 14:08 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-06 21:18 Unhandled relocation of type 11 Joshua Lamorie
2005-04-07  9:19 ` Wolfgang Grandegger
2005-04-07 14:20   ` Joshua Lamorie
2005-04-08 14:08     ` Joshua Lamorie [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4256904C.6080703@xiphos.ca \
    --to=jpl@xiphos.ca \
    --cc=linuxppc-embedded@ozlabs.org \
    --cc=rtai@rtai.org \
    --cc=wolfgang.grandegger@bluewin.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.