Logical expressions are one of the few cases where phi-nodes are directly generated during linearization. However, the genreated SSA is not correct: * the operands are reversed for '&&' * too few phi-sources are generated (and used) for combination of logical expressions. This series is available for review & testing in the Git repository at: git://github.com/lucvoo/sparse-dev.git fix-logical-phi ---------------------------------------------------------------- Luc Van Oostenryck (5): add linearization as a pass add testcases for wrong ordering in phi-nodes fix ordering of phi-node operand add tests for nested logical expr fix linearization of nested logical expr Documentation/dev-options.rst | 1 + lib.c | 1 + linearize.c | 49 +++++++---- validation/linear/logical-phi0.c | 48 +++++++++++ validation/linear/logical.c | 180 +++++++++++++++++++-------------------- validation/linear/phi-order01.c | 16 ++++ validation/linear/phi-order02.c | 16 ++++ validation/linear/phi-order03.c | 8 ++ validation/linear/phi-order04.c | 12 +++ 9 files changed, 223 insertions(+), 108 deletions(-) create mode 100644 validation/linear/logical-phi0.c create mode 100644 validation/linear/phi-order01.c create mode 100644 validation/linear/phi-order02.c create mode 100644 validation/linear/phi-order03.c create mode 100644 validation/linear/phi-order04.c