[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC v11 47/55] target/arm: make is_aa64 and arm_el_is_aa64 a macro
From: |
Claudio Fontana |
Subject: |
Re: [RFC v11 47/55] target/arm: make is_aa64 and arm_el_is_aa64 a macro for !TARGET_AARCH64 |
Date: |
Fri, 26 Mar 2021 20:13:02 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 |
On 3/26/21 8:05 PM, Claudio Fontana wrote:
> On 3/25/21 8:03 PM, Richard Henderson wrote:
>> On 3/23/21 9:46 AM, Claudio Fontana wrote:
>>> +#define is_a64(env) (false)
>> ...
>>> +#define arm_el_is_aa64(env, el) (false)
>>
>> Why a define and not have the ifdef inside the static inline?
>>
>> This define is causing you to make other random changes to avoid unused
>> variables, and I'm not keen.
>>
>> If you're running into problems with --enable-debug not eliminating code
>> blocks, leading to link errors, then I think that
>> __attribute__((always_inline)) and a comment will be the best option.
>
> I am not getting linking troubles even with --enable-debug atm,
> so I'd avoid the attribute for now?
Nevermind, I got the error again. And it does not go away with
((always_inline))...
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld:
libqemu-arm-softmmu.fa.p/target_arm_cpu-exceptions.c.o: in function
`arm_cpu_do_interrupt':
/home/claudio/git/qemu-pristine/qemu/build-tcg/../target/arm/cpu-exceptions.c:471:
undefined reference to `arm_cpu_do_interrupt_aarch64'
I will have to keep this until I find a better solution..
>
>>
>>
>>> +
>>> +#endif /* TARGET_AARCH64 */
>>> +
>>> +/**
>>> + * arm_hcr_el2_eff(): Return the effective value of HCR_EL2.
>>> + * E.g. when in secure state, fields in HCR_EL2 are suppressed,
>>> + * "for all purposes other than a direct read or write access of HCR_EL2."
>>> + * Not included here is HCR_RW.
>>> + */
>>> +uint64_t arm_hcr_el2_eff(CPUARMState *env);
>>
>> Is this diff being weird or did you really move this declaration, and if so,
>> why?
>
> Yes, weird diff.
>
>>
>>
>> r~
>>
>
> Tx
>
- [RFC v11 50/55] target/arm: tcg: restrict ZCR cpregs to TARGET_AARCH64, (continued)
- [RFC v11 50/55] target/arm: tcg: restrict ZCR cpregs to TARGET_AARCH64, Claudio Fontana, 2021/03/23
- [RFC v11 46/55] target/arm: cpu-sve: split TCG and KVM functionality, Claudio Fontana, 2021/03/23
- [RFC v11 43/55] target/arm: add tcg cpu accel class, Claudio Fontana, 2021/03/23
- [RFC v11 48/55] target/arm: arch_dump: restrict ELFCLASS64 to AArch64, Claudio Fontana, 2021/03/23
- [RFC v11 47/55] target/arm: make is_aa64 and arm_el_is_aa64 a macro for !TARGET_AARCH64, Claudio Fontana, 2021/03/23
- [RFC v11 49/55] target/arm: cpu-exceptions: new module, Claudio Fontana, 2021/03/23
- [RFC v11 52/55] target/arm: refactor arm_cpu_finalize_features into cpu64, Claudio Fontana, 2021/03/23
- [RFC v11 55/55] target/arm: remove v7m stub function for !CONFIG_TCG, Claudio Fontana, 2021/03/23
- [RFC v11 54/55] target/arm: tcg: remove superfluous CONFIG_TCG check, Claudio Fontana, 2021/03/23
- [RFC v11 45/55] target/arm: cpu-sve: new module, Claudio Fontana, 2021/03/23