mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* 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
					
				
					 4 changed files with 27 additions and 3 deletions
				
			
		|  | @ -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> | ||||
| 
 | ||||
| 	* configure.in: check select_large_fdset. | ||||
|  |  | |||
|  | @ -229,6 +229,9 @@ flush_register_windows(void) | |||
| 	; | ||||
| } | ||||
| #  define FLUSH_REGISTER_WINDOWS flush_register_windows() | ||||
| #elif defined(__ia64__) | ||||
| NOINLINE(void flush_register_windows(void)); | ||||
| #  define FLUSH_REGISTER_WINDOWS flush_register_windows() | ||||
| #else | ||||
| #  define FLUSH_REGISTER_WINDOWS ((void)0) | ||||
| #endif | ||||
|  |  | |||
							
								
								
									
										10
									
								
								eval.c
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								eval.c
									
										
									
									
									
								
							|  | @ -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 | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										8
									
								
								ruby.h
									
										
									
									
									
								
							
							
						
						
									
										8
									
								
								ruby.h
									
										
									
									
									
								
							|  | @ -19,6 +19,11 @@ extern "C" { | |||
| #endif | ||||
| 
 | ||||
| #include "config.h" | ||||
| 
 | ||||
| #ifndef NOINLINE | ||||
| # define NOINLINE(x) x | ||||
| #endif | ||||
| 
 | ||||
| #include "defines.h" | ||||
| 
 | ||||
| #ifdef HAVE_STDLIB_H | ||||
|  | @ -59,9 +64,6 @@ extern "C" { | |||
| #ifndef DEPRECATED | ||||
| # define DEPRECATED(x) x | ||||
| #endif | ||||
| #ifndef NOINLINE | ||||
| # define NOINLINE(x) x | ||||
| #endif | ||||
| 
 | ||||
| #if defined(HAVE_ALLOCA_H) | ||||
| #include <alloca.h> | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 akr
						akr