* defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.

(flush_register_windows): declare flush_register_windows.

* eval.c (flush_register_windows): new function.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2005-07-02 09:10:06 +00:00
parent 1453dc92e4
commit 179a0025aa
3 changed files with 24 additions and 0 deletions

10
eval.c
View file

@ -12823,3 +12823,13 @@ rb_throw(tag, val)
argv[1] = val;
rb_f_throw(2, argv);
}
/* flush_register_windows must not be inlined because flushrs doesn't flush
* current frame in register stack. */
#ifdef __ia64__
void flush_register_windows(void)
{
__asm__ ("flushrs");
}
#endif