[Uim] uim 1.5.0 TODO list

YAMAMOTO Kengo / YamaKen yamaken at bp.iij4u.or.jp
Sat Jan 27 08:38:58 EET 2007


At Sat, 27 Jan 2007 15:12:42 +0900,
ek.kato at gmail.com wrote:
> 
> On 1/27/07, YAMAMOTO Kengo / YamaKen <yamaken at bp.iij4u.or.jp> wrote:
> > At Sat, 27 Jan 2007 14:03:52 +0900,
> > ek.kato at gmail.com wrote:
> > > The problem here is calling __builtin_unwind_init() causes weird
> > > behavior sometimes.  In gc6.8, DARWIN doesn't use
> > > GC_generic_push_regs(), so __builtin_unwind_init() is never called.
> >
> > With my patch, it is expected that __builtin_unwind_init() will
> > never be called if defined(UNIX_LIKE) && HAVE_GETCONTEXT. And
> > getcontext() is selected instead of __builtin_unwind_init() in
> > GC_with_callee_saves_pushed(). Please let me know the values of
> > HAVE_PUSH_REGS, UNIX_LIKE and HAVE_GETCONTEXT on your
> > environment.
> 
> Mac OS X 10.3 doesn't have getcontext althoguht it has header files.
> 
> UNIX_LIKE -> yes
> HAVE_PUSH_REGS -> no (and yes with USE_ASM_PUSH_REGS patch)
> HAVE_GETCONTEXT -> no

I didn't know the header-only issue and that such a recent
version of Mac OS X is lacking getcontext(). Thanks. So only
10.4.x is having it?

Which version of gcc on 10.3? And is the __builtin_unwind_init()
problem gcc-generic or Mac OS X specific?

And finally, does this workaround effect?

mach_dep.c:
-#   elif defined(HAVE_BUILTIN_UNWIND_INIT)
+#   elif 0 && defined(HAVE_BUILTIN_UNWIND_INIT)

------------------------------------------------
YAMAMOTO Kengo / YamaKen  yamaken at bp.iij4u.or.jp
FAMILY   Given / Nick
http://en.wikipedia.org/wiki/Japanese_name



More information about the uim mailing list