 76f9d6ad19
			
		
	
	
		76f9d6ad19
		
	
	
	
	
		
			
			We adjust CONFIG_ATOMIC128 and CONFIG_CMPXCHG128 with CONFIG_ATOMIC128_OPT in atomic128.h. It is difficult to tell when those changes have been applied with the ifdef we must use with CONFIG_CMPXCHG128. So instead use HAVE_CMPXCHG128, which triggers -Werror-undef when the proper header has not been included. Improves tcg_gen_atomic_cmpxchg_i128 for s390x host, which requires CONFIG_ATOMIC128_OPT. Without this we fall back to EXCP_ATOMIC to single-step 128-bit atomics, which is slow enough to cause some tests to time out. Reported-by: Thomas Huth <thuth@redhat.com> Tested-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
		
			
				
	
	
		
			21 lines
		
	
	
		
			511 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			511 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0-or-later */
 | |
| /*
 | |
|  * Helper file for declaring TCG helper functions.
 | |
|  * This one expands prototypes for the helper functions.
 | |
|  */
 | |
| 
 | |
| #ifndef HELPER_PROTO_COMMON_H
 | |
| #define HELPER_PROTO_COMMON_H
 | |
| 
 | |
| #include "qemu/atomic128.h"  /* for HAVE_CMPXCHG128 */
 | |
| 
 | |
| #define HELPER_H "accel/tcg/tcg-runtime.h"
 | |
| #include "exec/helper-proto.h.inc"
 | |
| #undef  HELPER_H
 | |
| 
 | |
| #define HELPER_H "accel/tcg/plugin-helpers.h"
 | |
| #include "exec/helper-proto.h.inc"
 | |
| #undef  HELPER_H
 | |
| 
 | |
| #endif /* HELPER_PROTO_COMMON_H */
 |