kopia lustrzana https://github.com/f4exb/sdrangel
				
				
				
			cmake SIMD test programs: avoid possible core dumps by catching SIGILL
							rodzic
							
								
									af7e95e226
								
							
						
					
					
						commit
						547ee8444f
					
				|  | @ -1,6 +1,13 @@ | |||
| #include <signal.h> | ||||
| #include <immintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m256d x = _mm256_setzero_pd(); | ||||
| 	x=_mm256_addsub_pd(x,x); | ||||
| 	return 0; | ||||
|  |  | |||
|  | @ -1,6 +1,13 @@ | |||
| #include <signal.h> | ||||
| #include <immintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m256i x = _mm256_setzero_si256(); | ||||
| 	x=_mm256_add_epi64 (x,x); | ||||
| 	return 0; | ||||
|  |  | |||
|  | @ -1,7 +1,14 @@ | |||
| #include <stdint.h> | ||||
| #include <signal.h> | ||||
| #include <immintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
|     uint64_t x[8] = {0}; | ||||
|     __m512i y = _mm512_loadu_si512((__m512i*)x); | ||||
|     return 0; | ||||
|  |  | |||
|  | @ -1,6 +1,13 @@ | |||
| #include <signal.h> | ||||
| #include <emmintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m128i x = _mm_setzero_si128(); | ||||
| 	x=_mm_add_epi64(x,x); | ||||
| 	return 0; | ||||
|  |  | |||
|  | @ -1,7 +1,14 @@ | |||
| #include <signal.h> | ||||
| #include <emmintrin.h> | ||||
| #include <pmmintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m128d x = _mm_setzero_pd(); | ||||
| 	x=_mm_addsub_pd(x,x); | ||||
| 	return 0; | ||||
|  |  | |||
|  | @ -1,7 +1,14 @@ | |||
| #include <signal.h> | ||||
| #include <emmintrin.h> | ||||
| #include <smmintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m128i x = _mm_setzero_si128(); | ||||
| 	__m128i a = _mm_setzero_si128(); | ||||
| 	__m128i b = _mm_setzero_si128(); | ||||
|  |  | |||
|  | @ -1,6 +1,13 @@ | |||
| #include <signal.h> | ||||
| #include <nmmintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	unsigned int x=32; | ||||
| 	x=_mm_crc32_u8(x,4); | ||||
| 	return 0; | ||||
|  |  | |||
|  | @ -1,7 +1,14 @@ | |||
| #include <signal.h> | ||||
| #include <emmintrin.h> | ||||
| #include <tmmintrin.h> | ||||
| 
 | ||||
| void signalHandler(int signum) { | ||||
|     exit(signum); // SIGILL = 4
 | ||||
| } | ||||
| 
 | ||||
| int main(int argc, char* argv[]) | ||||
| { | ||||
|     signal(SIGILL, signalHandler); | ||||
| 	__m128i x = _mm_setzero_si128(); | ||||
| 	x=_mm_alignr_epi8(x,x,2); | ||||
| 	return 0; | ||||
|  |  | |||
		Ładowanie…
	
		Reference in New Issue
	
	 f4exb
						f4exb