[TRE-general] can't find a register in class `GENERAL_REGS' while reloading `asm'

Gregory Sharp gregsharp.geo at yahoo.com
Mon Apr 16 06:18:08 EEST 2007


--- skaller <skaller at users.sourceforge.net> wrote:

> On Sun, 2007-04-15 at 16:43 -0700, Gregory Sharp wrote:
> 
> > -------------
> >  gcc -DHAVE_CONFIG_H -I. -I. -I.. -I. -I../gnulib/lib -g -O2
> > -Wall -MT tre-match-approx.lo -MD -MP -MF
> > .deps/tre-match-approx.Tpo -c tre-match-approx.c  -fPIC
> -DPIC -o
> > .libs/tre-match-approx.o
> > tre-match-approx.c: In function `tre_tnfa_run_approx':
> > /usr/include/bits/string.h:125: error: can't find a register
> in
> > class `GENERAL_REGS' while reloading `asm'
> 
> The problem is compiling a C library system header file 
> not TRE. This should only happen if code reserves a machine
> register before #including a C header (which should never
> be done because it changes the interface).
> 
> but it can also happen due to a bug in gcc. Report
> 
> 	gcc --version
> 
> and
> 
> 	uname -a
> 
> pls?
> 
> -- 
> John Skaller <skaller at users dot sf dot net>
> Felix, successor to C++: http://felix.sf.net
> 

Thanks John.  I didn't know about the gcc bug.

Seems TRE 0.7.2 had a hook in the configure script 
which sometimes set the cflags to -O1:

          tre_cflags="-O1 -fomit-frame-pointer"

Greg
---
bash-3.2$ gcc --version
gcc (GCC) 3.4.6
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. 
There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

bash-3.2$ uname -a
Linux blackear 2.4.33.3 #1 Fri Sep 1 01:48:52 CDT 2006 i686
pentium3 i386 GNU/Linux
bash-3.2$ 


Greg Sharp
gregsharp at geocities.com

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


More information about the TRE-general mailing list