[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v7 14/42] target/arm: Add helper_probe_access
From: |
Richard Henderson |
Subject: |
Re: [PATCH v7 14/42] target/arm: Add helper_probe_access |
Date: |
Thu, 18 Jun 2020 12:19:57 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 |
On 6/18/20 6:33 AM, Peter Maydell wrote:
> On Wed, 3 Jun 2020 at 02:13, Richard Henderson
> <richard.henderson@linaro.org> wrote:
>>
>> Raise an exception if the given virtual memory is not accessible.
>>
>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>> ---
>
>> diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c
>> index 0ee2ef403e..b032829194 100644
>> --- a/target/arm/translate-a64.c
>> +++ b/target/arm/translate-a64.c
>> @@ -232,6 +232,19 @@ static void gen_address_with_allocation_tag0(TCGv_i64
>> dst, TCGv_i64 src)
>> tcg_gen_andi_i64(dst, src, ~MAKE_64BIT_MASK(56, 4));
>> }
>>
>> +static void gen_probe_access(DisasContext *s, TCGv_i64 ptr,
>> + MMUAccessType acc, int log2_size)
>> +{
>> + TCGv_i32 t_acc = tcg_const_i32(acc);
>> + TCGv_i32 t_idx = tcg_const_i32(get_mem_index(s));
>> + TCGv_i32 t_size = tcg_const_i32(1 << log2_size);
>> +
>> + gen_helper_probe_access(cpu_env, ptr, t_acc, t_idx, t_size);
>> + tcg_temp_free_i32(t_acc);
>> + tcg_temp_free_i32(t_idx);
>> + tcg_temp_free_i32(t_size);
>> +}
>
> This isn't called from anywhere -- clang is probably going to
> complain about that.
Ah, yes. I thought it would be helpful to split this patch, but I guess not.
I'll merge with the next patch where it's used.
r~
- [PATCH v7 12/42] target/arm: Implement the SUBP instruction, (continued)
- [PATCH v7 16/42] target/arm: Implement the STGP instruction, Richard Henderson, 2020/06/02
- [PATCH v7 17/42] target/arm: Restrict the values of DCZID.BS under TCG, Richard Henderson, 2020/06/02
- [PATCH v7 14/42] target/arm: Add helper_probe_access, Richard Henderson, 2020/06/02
- [PATCH v7 21/42] target/arm: Move regime_el to internals.h, Richard Henderson, 2020/06/02
- [PATCH v7 15/42] target/arm: Implement LDG, STG, ST2G instructions, Richard Henderson, 2020/06/02
- [PATCH v7 22/42] target/arm: Move regime_tcr to internals.h, Richard Henderson, 2020/06/02
- [PATCH v7 20/42] target/arm: Implement the access tag cache flushes, Richard Henderson, 2020/06/02
- [PATCH v7 18/42] target/arm: Simplify DC_ZVA, Richard Henderson, 2020/06/02