[PATCH 0/6] simplify TRUNC + ZEXT into a simple AND masking

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

 



This series contains the simplification of a truncating cast
followed by a zero-extension into the much simpler corresponding
AND masking. While this simplification is already valuable in itself,
its main value is probably its potential to trigger additionnal
simplifications involving the masking.


The series is available for review & testing in the Git repository at:
  git://github.com/lucvoo/sparse-dev.git bitfield-trunc

It's based on the reworking of the cast instructions available at:
  git://github.com/lucvoo/sparse-dev.git cast-rework

----------------------------------------------------------------
Luc Van Oostenryck (6):
      new helper: def_opcode()
      cast: simplify simplify_cast()
      cast: merge simplification of constant casts with constant unops
      cast: prepare for more cast simplifications
      cast: keep instruction sizes consistent
      cast: simplify TRUNC + ZEXT to AND

 linearize.c                                       |  12 +-
 simplify.c                                        |  93 +++++-------
 validation/linear/bitfield-size.c                 | 174 ++++++++++++++++++++++
 validation/{linear => optim}/bitfield-init-zero.c |  24 +--
 validation/{ => optim}/bitfield-size.c            |   4 +-
 5 files changed, 240 insertions(+), 67 deletions(-)
 create mode 100644 validation/linear/bitfield-size.c
 rename validation/{linear => optim}/bitfield-init-zero.c (75%)
 rename validation/{ => optim}/bitfield-size.c (93%)
--
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