You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			95 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
			
		
		
	
	
			95 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
| #include <stddef.h>
 | |
| #include <stdint.h>
 | |
| #include <stdbool.h>
 | |
| 
 | |
| #include "console.h"
 | |
| 
 | |
| #define TEST "Test "
 | |
| #define PASS "PASS\n"
 | |
| #define FAIL "FAIL\n"
 | |
| 
 | |
| #define PVR_MICROWATT 0x00630000
 | |
| 
 | |
| extern long test_addpcis_1(void);
 | |
| extern long test_addpcis_2(void);
 | |
| extern long test_mfpvr(void);
 | |
| extern long test_mtpvr(void);
 | |
| extern long test_bdnzl(void);
 | |
| extern long test_loadhitstore(void);
 | |
| extern long test_icbi(void);
 | |
| extern long test_dcbz_near_store(void);
 | |
| 
 | |
| // i < 100
 | |
| void print_test_number(int i)
 | |
| {
 | |
| 	puts(TEST);
 | |
| 	putchar(48 + i/10);
 | |
| 	putchar(48 + i%10);
 | |
| 	putchar(':');
 | |
| }
 | |
| 
 | |
| int main(void)
 | |
| {
 | |
| 	int fail = 0;
 | |
| 
 | |
| 	console_init();
 | |
| 
 | |
| 	print_test_number(1);
 | |
| 	if (test_addpcis_1() != 0) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(2);
 | |
| 	if (test_addpcis_2() != 0) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(3);
 | |
| 	if (test_mfpvr() != PVR_MICROWATT) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(4);
 | |
| 	if (test_mtpvr() != PVR_MICROWATT) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(5);
 | |
| 	if (test_bdnzl() != 0) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(6);
 | |
| 	if (test_loadhitstore() != 0) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(7);
 | |
| 	if (test_icbi() != 1) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	print_test_number(8);
 | |
| 	if (test_dcbz_near_store() != 0) {
 | |
| 		fail = 1;
 | |
| 		puts(FAIL);
 | |
| 	} else
 | |
| 		puts(PASS);
 | |
| 
 | |
| 	return fail;
 | |
| }
 |