mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 11:42:30 +00:00 
			
		
		
		
	Only enable code coverage counters on linux
This commit is contained in:
		
							parent
							
								
									bd3dd80526
								
							
						
					
					
						commit
						95f1eb9b87
					
				
					 4 changed files with 6 additions and 6 deletions
				
			
		|  | @ -406,7 +406,7 @@ int main(int argc, char **argv) | |||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| #ifdef YOSYS_ENABLE_COVER | ||||
| #if defined(YOSYS_ENABLE_COVER) && defined(__linux__) | ||||
| 	if (getenv("YOSYS_COVER_DIR") || getenv("YOSYS_COVER_FILE")) | ||||
| 	{ | ||||
| 		string filename; | ||||
|  |  | |||
|  | @ -402,7 +402,7 @@ void log_cell(RTLIL::Cell *cell, std::string indent) | |||
| // ---------------------------------------------------
 | ||||
| // This is the magic behind the code coverage counters
 | ||||
| // ---------------------------------------------------
 | ||||
| #ifdef YOSYS_ENABLE_COVER | ||||
| #if defined(YOSYS_ENABLE_COVER) && defined(__linux__) | ||||
| 
 | ||||
| dict<std::string, std::pair<std::string, int>> extra_coverage_data; | ||||
| 
 | ||||
|  |  | |||
|  | @ -92,10 +92,10 @@ static inline void log_assert_worker(bool cond, const char *expr, const char *fi | |||
| // This is the magic behind the code coverage counters
 | ||||
| // ---------------------------------------------------
 | ||||
| 
 | ||||
| #ifdef YOSYS_ENABLE_COVER | ||||
| #if defined(YOSYS_ENABLE_COVER) && defined(__linux__) | ||||
| 
 | ||||
| #define cover(_id) do { \ | ||||
|     static CoverData __d YS_ATTRIBUTE(section("yosys_cover_list"), aligned(1), used) = { __FILE__, __FUNCTION__, _id, __LINE__, 0 }; \ | ||||
|     static CoverData __d __attribute__((section("yosys_cover_list"), aligned(1), used)) = { __FILE__, __FUNCTION__, _id, __LINE__, 0 }; \ | ||||
|     __d.counter++; \ | ||||
| } while (0) | ||||
| 
 | ||||
|  |  | |||
|  | @ -80,7 +80,7 @@ struct CoverPass : public Pass { | |||
| 		log("      printf \"%%-60s %%10d %%s\\n\", p[i], c[i], i; }' {files} | sort -k3\n"); | ||||
| 		log("\n"); | ||||
| 		log("\n"); | ||||
| 		log("Coverage counters are only available in debug builds of Yosys for Linux.\n"); | ||||
| 		log("Coverage counters are only available in Yosys for Linux.\n"); | ||||
| 		log("\n"); | ||||
| 	} | ||||
| 	virtual void execute(std::vector<std::string> args, RTLIL::Design *design) | ||||
|  | @ -128,7 +128,7 @@ struct CoverPass : public Pass { | |||
| 			log("\n"); | ||||
| 		} | ||||
| 
 | ||||
| #ifdef YOSYS_ENABLE_COVER | ||||
| #if defined(YOSYS_ENABLE_COVER) && defined(__linux__) | ||||
| 		for (auto &it : get_coverage_data()) { | ||||
| 			if (!patterns.empty()) { | ||||
| 				for (auto &p : patterns) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue