Re: [PATCH 22/29] sssa: add seal_gotos() needed to seal BBs targeted by gotos

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 16, 2017 at 11:34 AM, Luc Van Oostenryck
<luc.vanoostenryck@xxxxxxxxx> wrote:
> +void seal_gotos(struct entrypoint *ep)
> +{
> +       struct basic_block *bb;
> +
> +       FOR_EACH_PTR(ep->bbs, bb) {
> +               if (bb->sealed)
> +                       continue;
> +               if (bb->unsealable)
> +                       bb->unsealable = 0;
> +               seal_bb(bb);
> +       } END_FOR_EACH_PTR(bb);
> +
> +       // cleanup these fields as they are aliased to ::needs & ::defines
> +       FOR_EACH_PTR(ep->bbs, bb) {
> +               bb->sealed = bb->unsealable = 0;

I think if you want bb->needs and bb->define to zero.
Best directly assign bb->needs && bb->defines to zero;

I am not sure C stander how to deal with the unused bit field
parts. If I recall correctly a lot of bit-field related stuff are implementation
define. So setting bb->sealed and bb->unsealable might not be enough
to make bb->needs zero.

Chris
--
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux