qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] [PATCH v2 21/68] target/arm: Convert Synchronization prim


From: Richard Henderson
Subject: Re: [Qemu-arm] [PATCH v2 21/68] target/arm: Convert Synchronization primitives
Date: Fri, 23 Aug 2019 09:28:35 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

On 8/23/19 8:28 AM, Peter Maydell wrote:
>> +    gen_aa32_st_i32(s, tmp, addr, get_mem_index(s), mop | s->be_data);
>> +    disas_set_da_iss(s, mop, a->rt | ISSIsAcqRel | ISSIsWrite);
...
>> -                                switch (op1) {
>> -                                case 0: /* stl */
>> -                                    gen_aa32_st32_iss(s, tmp, addr,
>> -                                                      get_mem_index(s),
>> -                                                      rm | ISSIsAcqRel);
>> -                                    break;
>> -                                case 2: /* stlb */
>> -                                    gen_aa32_st8_iss(s, tmp, addr,
>> -                                                     get_mem_index(s),
>> -                                                     rm | ISSIsAcqRel);
>> -                                    break;
>> -                                case 3: /* stlh */
>> -                                    gen_aa32_st16_iss(s, tmp, addr,
>> -                                                      get_mem_index(s),
>> -                                                      rm | ISSIsAcqRel);
>> -                                    break;
> 
> Any particular reason for doing separate gen_aa32_st_i32()
> and disas_set_da_iss() calls rather than using the _gen_aa32_st32_iss()
> function that the old decoder did?

I think gen_aa32_st_i32 with the MemOp argument is preferable to a switch
statement that enumerates the different sizes.

We don't have a version of gen_aa32_st_i32 that also passes the ISS.  While we
could add one, a separate call seems just as easy.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]