* 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: svn+ssh://ci.ruby-lang.org/ruby/trunk@8696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
12bed479ec
commit
7215b72363
@ -1,3 +1,12 @@
|
|||||||
|
Sat Jul 2 17:06:23 2005 Tanaka Akira <akr@m17n.org>
|
||||||
|
|
||||||
|
* 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.
|
||||||
|
|
||||||
Sat Jul 2 15:19:41 2005 Tanaka Akira <akr@m17n.org>
|
Sat Jul 2 15:19:41 2005 Tanaka Akira <akr@m17n.org>
|
||||||
|
|
||||||
* configure.in: check select_large_fdset.
|
* configure.in: check select_large_fdset.
|
||||||
|
@ -229,6 +229,9 @@ flush_register_windows(void)
|
|||||||
;
|
;
|
||||||
}
|
}
|
||||||
# define FLUSH_REGISTER_WINDOWS flush_register_windows()
|
# define FLUSH_REGISTER_WINDOWS flush_register_windows()
|
||||||
|
#elif defined(__ia64__)
|
||||||
|
NOINLINE(void flush_register_windows(void));
|
||||||
|
# define FLUSH_REGISTER_WINDOWS flush_register_windows()
|
||||||
#else
|
#else
|
||||||
# define FLUSH_REGISTER_WINDOWS ((void)0)
|
# define FLUSH_REGISTER_WINDOWS ((void)0)
|
||||||
#endif
|
#endif
|
||||||
|
10
eval.c
10
eval.c
@ -13410,3 +13410,13 @@ rb_exec_recursive(func, obj, arg)
|
|||||||
return result;
|
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
|
||||||
|
|
||||||
|
8
ruby.h
8
ruby.h
@ -19,6 +19,11 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
|
#ifndef NOINLINE
|
||||||
|
# define NOINLINE(x) x
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "defines.h"
|
#include "defines.h"
|
||||||
|
|
||||||
#ifdef HAVE_STDLIB_H
|
#ifdef HAVE_STDLIB_H
|
||||||
@ -59,9 +64,6 @@ extern "C" {
|
|||||||
#ifndef DEPRECATED
|
#ifndef DEPRECATED
|
||||||
# define DEPRECATED(x) x
|
# define DEPRECATED(x) x
|
||||||
#endif
|
#endif
|
||||||
#ifndef NOINLINE
|
|
||||||
# define NOINLINE(x) x
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(HAVE_ALLOCA_H)
|
#if defined(HAVE_ALLOCA_H)
|
||||||
#include <alloca.h>
|
#include <alloca.h>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user