Taylor Simpson <[email protected]> writes:
> Is there a precedent for this? I'm OK with DEBUG_HEX, but I assumed
> reviewers wouldn't approve
> #ifdef FIXME
> #define DEBUG_HEX
> #endif
We are trying to phase out this style of #define as it's prone to
bitrot. What you can do if define a debug helper like:
#define D(fmt, ..) \
if (DEBUG_HEXAGON) { \
qemu_log(fmt, ## __VA_ARGS__); \
}
So the debug will still be built (and format strings checked etc) but
with DEBUG_HEXAGON as 0 things get dead coded away.
>
> Taylor
>
>
> -----Original Message-----
> From: Richard Henderson <[email protected]>
> Sent: Wednesday, November 20, 2019 3:02 AM
> To: Laurent Vivier <[email protected]>; Taylor Simpson
> <[email protected]>; Philippe Mathieu-Daudé <[email protected]>;
> [email protected]; [email protected]
> Subject: Re: [PATCH] Add minimal Hexagon target - First in a series of
> patches - linux-user changes + linux-user/hexagon + skeleton of
> target/hexagon - Files in target/hexagon/imported are from another project
> and therefore do not conform to qemu coding standards
>
>
> On 11/20/19 9:33 AM, Laurent Vivier wrote:
>> Le 20/11/2019 à 05:48, Taylor Simpson a écrit :
>>> For the general DEBUG_HEX messages, I think the trace infrastructure isn't
>>> quite what I'm looking for.
>>>
>>> Here's a sample of what it prints
>>> Start packet: pc = 0x4002f0
>>> Packet committed: pc = 0x4002f0
>>> Regs written
>>> r18 = -69420 (0xfffef0d4)
>>> r19 = -69412 (0xfffef0dc)
>>> Stores
>>> memd[0xfffef0b0] = 0 (0x0000000000000000) Next PC = 0x4002f8
>>> Exec counters: pkt = 17, insn = 24, hvx = 0
>
> For something like this, I'd keep DEBUG_HEX.
>
>>> if (qemu_loglevel_maks(CPU_LOG_EXEC)) {
>
> CPU_LOG_EXEC already has a specific structure, listing the TranslationBlocks
> that are executed. It shouldn't be hijacked for something else.
>
> If you really want a runtime flag for this, we should add a new CPU_LOG_*
> flag.
>
>
> r~
--
Alex Bennée