Usage of unitialized heap in tic4x_print_cond

Joel Sherrill joel@rtems.org
Sun Dec 29 19:36:00 GMT 2019


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
>



More information about the Binutils mailing list