linux-sparse.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL] llvm fixes
@ 2017-09-18  9:51 Luc Van Oostenryck
  2017-10-02 19:49 ` Luc Van Oostenryck
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Luc Van Oostenryck @ 2017-09-18  9:51 UTC (permalink / raw)
  To: Christopher Li; +Cc: linux-sparse, Luc Van Oostenryck

Chris,

Please, pull these patches for master. 

No surprises here, it's just all March's good old fixes
for sparse-llvm which have been rebased on top of rc5.

Thanks,
Luc

----------------------------------------------------------------
The following changes since commit 90859bb4e3f9ad11f76ad42e3dce84043bdc3176:

  Bump sparse's version to -rc5 (2017-08-11 18:17:41 +0200)

are available in the git repository at:

  git://github.com/lucvoo/sparse.git llvm-fixes

for you to fetch changes up to fa5266b1770cf8d97158beb290af084082cd335a:

  llvm: fix creation of sparsec's tmp files (2017-08-12 16:05:11 +0200)

----------------------------------------------------------------
Luc Van Oostenryck (68):
      show OP_PHI without VOID
      don't output value of anonymous symbol's pointer
      add table to "negate" some opcode
      use opcode table for compare_opcode()
      canonicalize binops before simplification
      canonicalize compare instructions
      add is_signed_type()
      fix usage of inlined calls
      inlined calls should not block BB packing
      give function's arguments a type via OP_PUSH
      insure that all OP_PUSHs are just before their OP_CALL
      give a type to OP_PHISOURCEs
      give a type to OP_SELs, always
      give a type to OP_SWITCHs
      add doc about sparse's instructions/IR
      add support for wider type in switch-case
      llvm: remove unneeded arg 'module'
      llvm: remove unneeded 'generation'
      llvm: remove unneeded function::type
      llvm: reduce scope of 'bb_nr'
      llvm: use pseudo_list_size() instead of open coding it
      llvm: give arguments a name
      llvm: give a name to call's return values
      llvm: avoid useless temp variable
      llvm: extract get_sym_value() from pseudo_to_value()
      llvm: fix test of floating-point type
      llvm: fix translation of PSEUDO_VALs into a ValueRefs
      llvm: fix output_op_store() which modify its operand
      llvm: fix output_op_[ptr]cast()
      llvm: take care of degenerated rvalues
      llvm: add test cases for symbol's address
      llvm: add test cases for pointers passed as argument
      llvm: add test cases for arrays passed as argument
      llvm: add test cases for degenerated pointers
      llvm: add support for OP_NEG
      llvm: add support for OP_SETVAL with floats
      llvm: add support for OP_SETVAL with labels
      llvm: ignore OP_INLINED_CALL
      llvm: fix pointer/float mixup in comparisons
      llvm: fix type in comparison with an address constant
      llvm: give correct type to binops
      llvm: adjust OP_RET's type
      llvm: variadic functions are not being marked as such
      llvm: fix type of switch constants
      llvm: make pseudo_name() more flexible
      llvm: give a name to all values
      llvm: add support for OP_SWITCH with a range
      llvm: fix OP_SWITCH has no target
      llvm: make value_to_pvalue() more flexible
      llvm: make value_to_ivalue() more flexible
      llvm: add test case pointer compare with cast
      llvm: let pseudo_to_value() directly use the type
      llvm: remove unneeded pseudo_to_value() unneeded argument
      llvm: introduce get_ioperand()
      llvm: fix mutating function pointer
      llvm: fix mutated OP_RET
      llvm: fix mutated OP_SEL
      llvm: fix mutated OP_SWITCH
      llvm: fix mutated OP_PHISOURCE
      llvm: fix mutated OP_[PTR]CAST
      llvm: add support for restricted types
      llvm: fix get value from initialized symbol
      llvm: fix get value from non-anonymous symbol
      llvm: fix type of bitfields
      llvm: add support for OP_FPCAST
      llvm: add support for cast from floats
      llvm: cleanup of output_[ptr]cast()
      llvm: fix creation of sparsec's tmp files

 Documentation/instructions.txt          | 296 ++++++++++++++++
 Makefile                                |   1 +
 compile-i386.c                          |  14 +-
 example.c                               |   4 +-
 flow.c                                  |   3 +-
 linearize.c                             |  80 +++--
 linearize.h                             |  17 +-
 liveness.c                              |  14 +-
 memops.c                                |   2 +-
 opcode.c                                |  36 ++
 opcode.h                                |  10 +
 show-parse.c                            |  11 +-
 simplify.c                              |  77 ++---
 sparse-llvm.c                           | 586 +++++++++++++++++++++-----------
 sparsec                                 |   4 +-
 symbol.h                                |   9 +
 validation/backend/cast.c               |   7 +-
 validation/backend/compare-with-null.c  |  12 +
 validation/backend/constant-pointer.c   |  24 ++
 validation/backend/degenerate-ptr.c     |  72 ++++
 validation/backend/function-ptr-xtype.c |  37 ++
 validation/backend/function-ptr.c       | 148 +++++++-
 validation/backend/label-as-value.c     |  13 +
 validation/backend/load-global.c        |  21 ++
 validation/backend/pointer-add.c        |  54 +++
 validation/backend/pointer-cmp.c        |  12 +
 validation/backend/pointer-param.c      |  42 +++
 validation/backend/pointer-sub.c        |  17 +
 validation/backend/setval.c             |   7 +
 validation/backend/shift-special.c      |  13 +
 validation/backend/store-x2.c           |  16 +
 validation/backend/string-value.c       |  21 ++
 validation/backend/switch.c             | 248 ++++++++++++++
 validation/backend/symaddr.c            |  70 ++++
 validation/backend/type-constant.c      |  23 ++
 validation/call-inlined.c               |  54 +++
 validation/call-variadic.c              |  31 ++
 validation/loop-linearization.c         |   9 +-
 validation/optim/call-inlined.c         |  30 ++
 validation/optim/canonical-cmp.c        | 124 +++++++
 validation/push-call.c                  |  26 ++
 validation/switch-long.c                |  47 +++
 42 files changed, 2024 insertions(+), 318 deletions(-)
 create mode 100644 Documentation/instructions.txt
 create mode 100644 opcode.c
 create mode 100644 opcode.h
 create mode 100644 validation/backend/compare-with-null.c
 create mode 100644 validation/backend/constant-pointer.c
 create mode 100644 validation/backend/degenerate-ptr.c
 create mode 100644 validation/backend/function-ptr-xtype.c
 create mode 100644 validation/backend/label-as-value.c
 create mode 100644 validation/backend/load-global.c
 create mode 100644 validation/backend/pointer-add.c
 create mode 100644 validation/backend/pointer-cmp.c
 create mode 100644 validation/backend/pointer-param.c
 create mode 100644 validation/backend/pointer-sub.c
 create mode 100644 validation/backend/setval.c
 create mode 100644 validation/backend/shift-special.c
 create mode 100644 validation/backend/store-x2.c
 create mode 100644 validation/backend/string-value.c
 create mode 100644 validation/backend/switch.c
 create mode 100644 validation/backend/symaddr.c
 create mode 100644 validation/backend/type-constant.c
 create mode 100644 validation/call-inlined.c
 create mode 100644 validation/call-variadic.c
 create mode 100644 validation/optim/call-inlined.c
 create mode 100644 validation/optim/canonical-cmp.c
 create mode 100644 validation/push-call.c
 create mode 100644 validation/switch-long.c

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2017-11-26 19:34 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-18  9:51 [GIT PULL] llvm fixes Luc Van Oostenryck
2017-10-02 19:49 ` Luc Van Oostenryck
2017-10-16 14:41 ` Luc Van Oostenryck
2017-10-29 23:13 ` Christopher Li
2017-11-05  8:29   ` Christopher Li
2017-11-05 17:10     ` Luc Van Oostenryck
2017-11-05 23:18       ` Christopher Li
2017-11-12  1:04         ` Christopher Li
2017-11-12  5:05           ` Luc Van Oostenryck
2017-11-12 10:10             ` Christopher Li
2017-11-12  5:45           ` Luc Van Oostenryck
2017-11-05  8:49   ` Christopher Li
2017-11-05 17:03     ` Luc Van Oostenryck
2017-10-29 23:31 ` Christopher Li
2017-10-30  6:14   ` Luc Van Oostenryck
2017-11-17  9:51 ` Luc Van Oostenryck
     [not found]   ` <CANeU7QnTtcKP9ukNqGmMzfVMviYwYEfYFhgLRHHGxCqR7sPGEQ@mail.gmail.com>
2017-11-17 19:50     ` Luc Van Oostenryck
2017-11-26 17:42       ` Christopher Li
2017-11-26 19:34         ` Luc Van Oostenryck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).