Compare commits
	
		
			1 Commits
		
	
	
		
			99a9970ddd
			...
			4dbc7433a5
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 4dbc7433a5 | 
| @@ -959,14 +959,13 @@ template <typename BASE, features_e FEAT> iss::status riscv_hart_m_p<BASE, FEAT> | |||||||
| } | } | ||||||
|  |  | ||||||
| template <typename BASE, features_e FEAT> iss::status riscv_hart_m_p<BASE, FEAT>::read_cause(unsigned addr, reg_t &val) { | template <typename BASE, features_e FEAT> iss::status riscv_hart_m_p<BASE, FEAT>::read_cause(unsigned addr, reg_t &val) { | ||||||
|     auto res = csr[addr]; |  | ||||||
|     if((FEAT & features_e::FEAT_CLIC) && (csr[mtvec]&0x3)==3) { |     if((FEAT & features_e::FEAT_CLIC) && (csr[mtvec]&0x3)==3) { | ||||||
|         val = csr[addr] & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1) | (0xfUL<<16)); |         val = csr[addr] & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1) | (0xfUL<<16)); | ||||||
|         val |= clic_mprev_lvl<<16; |         val |= clic_mprev_lvl<<16; | ||||||
|         val |= state.mstatus.MPIE<<27; |         val |= state.mstatus.MPIE<<27; | ||||||
|         val |= state.mstatus.MPP<<28; |         val |= state.mstatus.MPP<<28; | ||||||
|     } else |     } else | ||||||
|         val = csr[addr]; // & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1)); |         val = csr[addr] & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1)); | ||||||
|     return iss::Ok; |     return iss::Ok; | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1149,7 +1149,7 @@ template <typename BASE, features_e FEAT> iss::status riscv_hart_mu_p<BASE, FEAT | |||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|     } else |     } else | ||||||
|         val = csr[addr];// & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1)); |         val = csr[addr] & ((1UL<<(traits<BASE>::XLEN-1)) | (mcause_max_irq-1)); | ||||||
|     return iss::Ok; |     return iss::Ok; | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user