diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-02 08:11:24 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-02 08:11:24 +0000 |
commit | 23c88ad3de4ec62224c2d36becfdffab48ff2ed2 (patch) | |
tree | 4d2f52d97b4623dbd90c25ecba4537bbfdd73e4d /eval.c | |
parent | 55f24fc6a5c50cdea243c7a8c718e6b994b555f5 (diff) | |
download | ruby-23c88ad3de4ec62224c2d36becfdffab48ff2ed2.tar.gz ruby-23c88ad3de4ec62224c2d36becfdffab48ff2ed2.tar.xz ruby-23c88ad3de4ec62224c2d36becfdffab48ff2ed2.zip |
* defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
(flush_register_windows): declare flush_register_windows.
* eval.c (flush_register_windows): new function.
* ruby.h (NOINLINE): move up to be effective in defines.h.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@8696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -13410,3 +13410,13 @@ rb_exec_recursive(func, obj, arg) return result; } } + +/* 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 + |