This series contains a fix for erroneous memop simplification related to wrong 'simplification' of OP_SYMADDRs. Because those OP_SYMADDRs are simplified away (replaced by the symbol itself) the corresponding symbol is no more considered as being addressable which cause errors in the memop simplification. The series is also available in the Git repository at: git://github.com/lucvoo/sparse-dev.git keep-op-symaddr ---------------------------------------------------------------- Luc Van Oostenryck (5): symaddr: add test cases symaddr: give a type to OP_SYMADDR symaddr: add support for OP_SYMADDR in sparse-llvm symaddr: fold them into loads & stores symaddr: keep OP_SYMADDR instructions linearize.c | 7 ++++--- simplify.c | 12 +++++++++++- sparse-llvm.c | 13 +++++++++++-- validation/call-inlined.c | 6 ++++-- validation/call-variadic.c | 3 ++- validation/linear/degen-array.c | 9 ++++++--- validation/mem2reg/address-used00.c | 2 +- validation/symaddr-op.c | 17 +++++++++++++++++ validation/symaddr.c | 35 +++++++++++++++++++++++++++++++++++ 9 files changed, 91 insertions(+), 13 deletions(-) create mode 100644 validation/symaddr-op.c create mode 100644 validation/symaddr.c -- 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