All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Daney <ddaney@avtrex.com>
To: Matej Kupljen <matej.kupljen@ultra.si>
Cc: crossgcc@sources.redhat.com, linux-mips@linux-mips.org
Subject: Re: MIPS SF toolchain
Date: Thu, 08 Sep 2005 08:29:05 -0700	[thread overview]
Message-ID: <432058C1.80106@avtrex.com> (raw)
In-Reply-To: <1126182122.25393.27.camel@orionlinux.starfleet.com>

Matej Kupljen wrote:
> Hi
> 
> I think I found the problem.
> 
> 
>>-------------------------------------------------------------
>>0002fe80 <__longjmp>:
>>   2fe80:       c4940038        lwc1    $f20,56(a0)
>>   2fe84:       c495003c        lwc1    $f21,60(a0)
> 
> ....
> 
> This code is written in  sysdeps/mips/setjmp_aux.c in 
> inline assembly.
> 
> 
>>and
>>-------------------------------------------------------------
>>0002ff70 <__sigsetjmp_aux>:
>>   2ff70:       3c1c0017        lui     gp,0x17
>>   2ff74:       279cce40        addiu   gp,gp,-12736
> 
> 
> This code is written in sysdeps/mips/__longjmp.c in 
> inline assembly.
> 
> 
>>How to solve this?
> 
> 
> Because I am using sf, there is no need to store those
> registers, or is it?
> Can I just #ifdef this code if compiled for sf?
> 

I do have some patches for glibc to get rid of these in a soft float 
build.  However as Ralf Baechle said in the other message, the kernel FP 
emulator works and is not that large of an overhead.

The reason I did the glibc patch was that some IDT processor/linux 
kernel combination I was using was broken WRT the FP emulator.  I 
suppose if you had a lot of code doing setjump (like C++ code with 
exeception handling that uses setjump/longjump as would be obtained with 
uClibc) than this would be bad.  But since you are using glibc, the 
tools will be using DWARF exception handling and it is not really an issue.

David Daney.

  parent reply	other threads:[~2005-09-08 15:22 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-07 13:09 MIPS SF toolchain Matej Kupljen
2005-09-07 13:54 ` sjhill
2005-09-07 15:33 ` David Daney
2005-09-08  8:41   ` Matej Kupljen
2005-09-08 11:33     ` Matej Kupljen
2005-09-08 12:22       ` Matej Kupljen
2005-09-08 12:29         ` Ralf Baechle
2005-09-08 13:48         ` Dan Kegel
2005-09-08 15:29         ` David Daney [this message]
2005-09-09  6:48           ` Matej Kupljen
2005-09-09 15:20             ` David Daney
2005-09-12  7:33               ` Matej Kupljen

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=432058C1.80106@avtrex.com \
    --to=ddaney@avtrex.com \
    --cc=crossgcc@sources.redhat.com \
    --cc=linux-mips@linux-mips.org \
    --cc=matej.kupljen@ultra.si \
    /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.