This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Usage of unitialized heap in tic4x_print_cond
- From: Joel Sherrill <joel at rtems dot org>
- To: Alan Modra <amodra at gmail dot com>
- Cc: binutils <binutils at sourceware dot org>
- Date: Sun, 29 Dec 2019 13:36:33 -0600
- Subject: Re: Usage of unitialized heap in tic4x_print_cond
- References: <20191229114121.GE16749@bubble.grove.modra.org>
- Reply-to: joel at rtems dot org
Out of curiosity, is this target actually still in use? The GCC port never
got merged and I doubt TI would sell it for new applications.
FWIW we had an RTEMS port to the c3x/c4x long ago but it was removed about
15 years ago.
--joel
On Sun, Dec 29, 2019, 5:41 AM Alan Modra <amodra@gmail.com> wrote:
> PR 25319
> * tic4x-dis.c (tic4x_print_cond): Init all of condtable.
>
> diff --git a/opcodes/tic4x-dis.c b/opcodes/tic4x-dis.c
> index d9f95c9410..01cfa1e060 100644
> --- a/opcodes/tic4x-dis.c
> +++ b/opcodes/tic4x-dis.c
> @@ -277,7 +277,7 @@ tic4x_print_cond (struct disassemble_info *info,
> unsigned int cond)
>
> if (condtable == NULL)
> {
> - condtable = xmalloc (sizeof (tic4x_cond_t *) * 32);
> + condtable = xcalloc (sizeof (tic4x_cond_t *), 32);
> for (i = 0; i < tic4x_num_conds; i++)
> condtable[tic4x_conds[i].cond] = (tic4x_cond_t *)(tic4x_conds + i);
> }
>
> --
> Alan Modra
> Australia Development Lab, IBM
>