mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236683 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			25 lines
		
	
	
		
			648 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			648 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Simple test for a fuzzer. The fuzzer must find a sequence of C++ tokens.
 | |
| #include <cstdint>
 | |
| #include <cstdlib>
 | |
| #include <cstddef>
 | |
| #include <cstring>
 | |
| #include <iostream>
 | |
| 
 | |
| static void Found() {
 | |
|   std::cout << "BINGO; Found the target, exiting\n";
 | |
|   exit(1);
 | |
| }
 | |
| 
 | |
| extern "C" void LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
 | |
|   // looking for "thread_local unsigned A;"
 | |
|   if (Size < 24) return;
 | |
|   if (0 == memcmp(&Data[0], "thread_local", 12))
 | |
|     if (Data[12] == ' ')
 | |
|       if (0 == memcmp(&Data[13], "unsigned", 8))
 | |
|         if (Data[21] == ' ')
 | |
|           if (Data[22] == 'A')
 | |
|             if (Data[23] == ';')
 | |
|               Found();
 | |
| }
 | |
| 
 |