Fix offset handling for ASI loads and stores (Vince Weaver)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4988 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									4105de6732
								
							
						
					
					
						commit
						95f9397c75
					
				| 
						 | 
				
			
			@ -1641,13 +1641,11 @@ static inline void gen_clear_float_exceptions(void)
 | 
			
		|||
#ifdef TARGET_SPARC64
 | 
			
		||||
static inline TCGv gen_get_asi(int insn, TCGv r_addr)
 | 
			
		||||
{
 | 
			
		||||
    int asi, offset;
 | 
			
		||||
    int asi;
 | 
			
		||||
    TCGv r_asi;
 | 
			
		||||
 | 
			
		||||
    if (IS_IMM) {
 | 
			
		||||
        r_asi = tcg_temp_new(TCG_TYPE_I32);
 | 
			
		||||
        offset = GET_FIELD(insn, 25, 31);
 | 
			
		||||
        tcg_gen_addi_tl(r_addr, r_addr, offset);
 | 
			
		||||
        tcg_gen_ld_i32(r_asi, cpu_env, offsetof(CPUSPARCState, asi));
 | 
			
		||||
    } else {
 | 
			
		||||
        asi = GET_FIELD(insn, 19, 26);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue