Age | Commit message (Expand) | Author | Files | Lines |
2018-03-02 | simplify cast of constant using wrong sizemerge-luc-master | Christopher Li | 1 | -1/+1 |
2018-03-02 | Merge remote-tracking branch 'luc/master' into merge-luc-master | Christopher Li | 245 | -1782/+7328 |
2018-02-27 | testsuite: add testcase about CSE problem | Luc Van Oostenryck | 1 | -0/+18 |
2018-02-27 | testsuite: add testcase for some random crash | Luc Van Oostenryck | 1 | -0/+11 |
2018-02-27 | Fix crash cause by previous pseudo size change | Christopher Li | 1 | -5/+3 |
2018-02-24 | remove unneeded cast in calls to free_ptr_list() | Luc Van Oostenryck | 2 | -2/+2 |
2018-02-24 | fix accesses through incorrect union members | Jann Horn | 2 | -7/+7 |
2018-02-24 | move the inner optimization loop into the main loop | Luc Van Oostenryck | 1 | -19/+12 |
2018-02-24 | move inner optimization loop into optimize.c | Luc Van Oostenryck | 3 | -37/+38 |
2018-02-24 | move liveness interface to its own header | Luc Van Oostenryck | 4 | -4/+13 |
2018-02-24 | expose interface to CSE | Luc Van Oostenryck | 2 | -2/+14 |
2018-02-24 | extract cse_eliminate() from cleanup_and_cse() | Luc Van Oostenryck | 1 | -7/+13 |
2018-02-24 | cse: untangle simplification & hashing | Luc Van Oostenryck | 1 | -8/+6 |
2018-02-24 | move the optimization loop in its own file | Luc Van Oostenryck | 4 | -62/+88 |
2018-02-24 | rename variable 'optimize' to 'optimize_level' | Luc Van Oostenryck | 2 | -4/+4 |
2018-02-24 | testsuite: fix typo with 'test-suite format -a' | Luc Van Oostenryck | 1 | -1/+1 |
2018-02-24 | 'amd64' is also ok for sparse-llvm | Luc Van Oostenryck | 1 | -1/+1 |
2018-02-24 | Update gcc attribute list | Christopher Li | 1 | -0/+11 |
2018-02-24 | sparse: ignore indirect_branch attribute | Randy Dunlap | 1 | -0/+1 |
2018-02-23 | Merge remote-tracking branch 'chrisl/pseudo-sized-value-v2' | Christopher Li | 6 | -32/+44 |
2018-02-20 | ban use of 'true' or 'false' | Luc Van Oostenryck | 10 | -70/+68 |
2018-02-20 | build: use -MMD for generated dependencies | Luc Van Oostenryck | 1 | -2/+2 |
2018-02-20 | build: add -MP for generated dependencies | Luc Van Oostenryck | 1 | -2/+2 |
2018-02-20 | use '%lld' for printing long longs | Luc Van Oostenryck | 1 | -2/+2 |
2018-02-20 | no need for signed & unsigned multiplication | Luc Van Oostenryck | 9 | -34/+19 |
2018-02-20 | unsigned multiplication is also associative | Luc Van Oostenryck | 1 | -1/+1 |
2018-02-17 | builtin: add testcases for expansion of FP classification | Luc Van Oostenryck | 4 | -0/+86 |
2018-02-17 | builtin: add testcases for expansion of special FP constants | Luc Van Oostenryck | 2 | -0/+62 |
2018-02-17 | builtin: add typechecking of isnan(), isinf(), ... | Luc Van Oostenryck | 2 | -0/+125 |
2018-02-17 | builtin: extract eval_args() from arguments_choose() | Luc Van Oostenryck | 1 | -19/+30 |
2018-02-17 | builtin: make builtins more builtin | Luc Van Oostenryck | 4 | -155/+187 |
2018-02-17 | builtin: add ctype for const {void,char} * | Luc Van Oostenryck | 2 | -0/+9 |
2018-02-17 | add __builtin functions for isinf_sign, isfinite and isnan | Logan Gunthorpe | 2 | -0/+6 |
2018-02-17 | rename base_type() to bitfield_base_type() | Luc Van Oostenryck | 1 | -5/+5 |
2018-02-17 | let struct access_data use a single type | Luc Van Oostenryck | 1 | -23/+21 |
2018-02-17 | use show_pseudo() for OP_SYMADDR's symbol | Luc Van Oostenryck | 1 | -16/+3 |
2018-02-17 | show_pseudo(): protect against NULL ->sym | Luc Van Oostenryck | 1 | -0/+4 |
2018-02-17 | llvm: initialize at declaration time | Luc Van Oostenryck | 1 | -12/+5 |
2018-02-17 | llvm: use list_size() to count the numbers of arguments | Luc Van Oostenryck | 1 | -7/+2 |
2018-02-16 | cleanup: remove unused 'struct pseudo_ptr_list' | Luc Van Oostenryck | 1 | -6/+0 |
2018-02-16 | Merge branches 'fix-converted-loads', 'kill-deadborn-loads', 'kill-dead-loads... | Luc Van Oostenryck | 10 | -49/+112 |
2018-02-16 | no repetition in unknown attribute warning message | Luc Van Oostenryck | 2 | -2/+2 |
2018-02-15 | By default disable the warning flag '-Wunknown-attribute' | Luc Van Oostenryck | 2 | -5/+1 |
2018-02-14 | fix: missing evaluate with '-include' | Luc Van Oostenryck | 2 | -1/+14 |
2018-02-14 | fix: missing evaluate with '-include' : add testcase | Luc Van Oostenryck | 2 | -0/+19 |
2018-02-14 | kill dead stores when simplifying symbols | Luc Van Oostenryck | 3 | -24/+5 |
2018-02-14 | kill dead loads | Luc Van Oostenryck | 3 | -1/+41 |
2018-02-14 | fix usage of deadborn loads | Luc Van Oostenryck | 2 | -1/+10 |
2018-02-14 | fix killing of converted loads | Luc Van Oostenryck | 3 | -4/+26 |
2018-02-14 | add testcases for converted loads | Luc Van Oostenryck | 1 | -0/+15 |
2018-02-13 | sparse: ignore indirect_branch attribute | Randy Dunlap | 1 | -0/+1 |
2018-02-13 | let kill_instruction() report if changes were made | Luc Van Oostenryck | 2 | -14/+13 |
2018-02-13 | use has_users() in dead_insn() too | Luc Van Oostenryck | 1 | -5/+2 |
2018-02-13 | add helper: has_users() | Luc Van Oostenryck | 1 | -0/+5 |
2018-02-13 | add helper for pseudo's user-list's size | Luc Van Oostenryck | 2 | -2/+7 |
2018-02-11 | add testcase for bad killing of dominated stores | Luc Van Oostenryck | 1 | -0/+16 |
2018-02-11 | fix missing checks for deleted instructions | Luc Van Oostenryck | 2 | -4/+31 |
2018-02-10 | fix dead dominator | Luc Van Oostenryck | 2 | -2/+1 |
2018-02-10 | add testcase of dead dominator | Luc Van Oostenryck | 1 | -0/+19 |
2018-02-08 | Merge branches 'cse-setfval' and 'extract-eval' into tip | Luc Van Oostenryck | 14 | -203/+331 |
2018-02-06 | extract extract eval_insn() from simplify_constant_binop() | Luc Van Oostenryck | 1 | -113/+128 |
2018-02-05 | fix examination of bad typeof | Luc Van Oostenryck | 2 | -1/+20 |
2018-02-01 | always evaluate both operands | Luc Van Oostenryck | 1 | -9/+9 |
2018-02-01 | do not report bad types twice | Luc Van Oostenryck | 2 | -2/+6 |
2018-02-01 | add helpers: valid_expr_type() & valid_subexpr_type() | Luc Van Oostenryck | 1 | -0/+11 |
2018-02-01 | use valid_type to avoid to warn twice on conditionals | Luc Van Oostenryck | 2 | -2/+1 |
2018-02-01 | add helper: valid_type() | Luc Van Oostenryck | 1 | -0/+5 |
2018-02-01 | early return if null ctype in evaluate_conditional() | Luc Van Oostenryck | 1 | -17/+15 |
2018-02-01 | fix error in bad conditional | Luc Van Oostenryck | 2 | -2/+3 |
2018-02-01 | add testcases for duplicated warning about invalid types | Luc Van Oostenryck | 3 | -0/+50 |
2018-01-31 | remove warning "call with no type" | Luc Van Oostenryck | 1 | -3/+1 |
2018-01-31 | report type & size on non-power-of-2 pointer subtraction | Luc Van Oostenryck | 2 | -1/+26 |
2018-01-26 | lib.c: early return from handle_onoff_switch() | Randy Dunlap | 1 | -0/+1 |
2018-01-25 | test-suite: handle format with filename.c not existing | Randy Dunlap | 1 | -0/+1 |
2018-01-24 | Documentation: editing fixes in test-suite | Randy Dunlap | 1 | -4/+4 |
2018-01-23 | Documentation: editing fixes in test-suite | Randy Dunlap | 1 | -4/+4 |
2018-01-23 | Documentation: make data-structures.txt easier to read | Randy Dunlap | 1 | -53/+54 |
2018-01-23 | sparse: minor manpage corrections | Randy Dunlap | 1 | -4/+4 |
2018-01-21 | doc: fix manpage formatting | Luc Van Oostenryck | 1 | -0/+1 |
2018-01-21 | Documentation: make data-structures.txt easier to read | Randy Dunlap | 1 | -53/+54 |
2018-01-21 | sparse: minor manpage corrections | Randy Dunlap | 1 | -3/+3 |
2018-01-16 | CSE: support CSE of floating-point literal | Luc Van Oostenryck | 2 | -0/+23 |
2018-01-08 | add OP_SETFVAL | Luc Van Oostenryck | 10 | -27/+100 |
2018-01-07 | cleanup: remove declaration of unused merge_phi_sources | Luc Van Oostenryck | 1 | -1/+1 |
2018-01-07 | cleanup: remove unused delete_last_basic_block() | Luc Van Oostenryck | 1 | -5/+0 |
2018-01-07 | cleanup: remove unused & obsolete symbol_is_typename() | Luc Van Oostenryck | 1 | -1/+0 |
2018-01-07 | cleanup: make some functions static | Luc Van Oostenryck | 7 | -15/+13 |
2018-01-07 | Merge branches 'fmax-warnings', 'funsigned-char', 'testcase-fix-missing-retur... | Luc Van Oostenryck | 11 | -40/+190 |
2018-01-03 | ctags: avoid null deref | Luc Van Oostenryck | 1 | -1/+1 |
2018-01-03 | give a type to builtin functions | Luc Van Oostenryck | 1 | -3/+3 |
2018-01-03 | teach sparse about '-fmax-warnings' | Luc Van Oostenryck | 3 | -3/+18 |
2018-01-02 | Merge branches 'fix-expand-bitfield-deref', 'fix-fpops-cse', 'null-expr', 'si... | Luc Van Oostenryck | 28 | -18/+543 |
2018-01-02 | fix: dereference null-type | Luc Van Oostenryck | 2 | -0/+20 |
2017-12-29 | add support for '-f[no-][un]signed-char' | Luc Van Oostenryck | 6 | -0/+35 |
2017-12-29 | let handle_switches() also handle reverse logic | Luc Van Oostenryck | 1 | -0/+2 |
2017-12-28 | fix implicit size of unsized arrays | Luc Van Oostenryck | 3 | -1/+46 |
2017-12-28 | add testcases for type comparison | Luc Van Oostenryck | 1 | -0/+76 |
2017-12-28 | add more testcases for function designator dereference | Luc Van Oostenryck | 3 | -0/+19 |
2017-12-28 | llvm: default init of arrays & structs | Luc Van Oostenryck | 1 | -0/+6 |
2017-12-28 | llvm: simplify emit of null pointers | Luc Van Oostenryck | 1 | -4/+6 |
2017-12-28 | fix crash on bad expression in linearize_switch() | Luc Van Oostenryck | 2 | -1/+2 |
2017-12-28 | warn on empty parenthesized expressions | Luc Van Oostenryck | 2 | -0/+33 |
2017-12-28 | testcases: add missing return statements | Luc Van Oostenryck | 2 | -2/+2 |
2017-12-27 | llvm: add declares for function prototypes | Luc Van Oostenryck | 1 | -1/+4 |
2017-12-27 | llvm: use LLVMModuleRef for get_sym_value() | Luc Van Oostenryck | 1 | -8/+8 |
2017-12-27 | llvm: fix: previous function ref MUST be reused | Luc Van Oostenryck | 2 | -23/+34 |
2017-12-21 | fix: restore CSE on floating-point compares | Luc Van Oostenryck | 2 | -2/+3 |
2017-12-21 | add testcase for CSE of floating-point compares | Luc Van Oostenryck | 1 | -0/+20 |
2017-12-21 | fix expansion of constant bitfield dereference | Luc Van Oostenryck | 2 | -1/+2 |
2017-12-21 | add testcase for constant bitfield dereference | Luc Van Oostenryck | 1 | -0/+28 |
2017-12-21 | Merge branches 'deref-fun-ptr' and 'deref-base-type' into tip | Luc Van Oostenryck | 3 | -0/+63 |
2017-12-21 | dereference of a function is a no-op | Luc Van Oostenryck | 7 | -6/+3 |
2017-12-21 | avoid unneeded alloc on error path | Luc Van Oostenryck | 1 | -1/+2 |
2017-12-21 | add testcases for multiple deref of calls | Luc Van Oostenryck | 5 | -4/+23 |
2017-12-21 | fix linearize (*fun)() | Luc Van Oostenryck | 4 | -10/+3 |
2017-12-21 | simplify linearize_call_expression() | Luc Van Oostenryck | 1 | -8/+3 |
2017-12-21 | add testcases for the linearization of calls | Luc Van Oostenryck | 12 | -0/+318 |
2017-12-21 | fix: evaluate_dereference() unexamined base type | Luc Van Oostenryck | 3 | -2/+1 |
2017-12-21 | add testcases for unexamined base type | Luc Van Oostenryck | 2 | -0/+64 |
2017-12-16 | Merge branch 'testsuite-arg-env' into cli-macro | Luc Van Oostenryck | 1 | -8/+6 |
2017-12-16 | fix: spaces in macro definition on the command line | Luc Van Oostenryck | 2 | -2/+1 |
2017-12-16 | add test case for space within command line | Luc Van Oostenryck | 1 | -0/+11 |
2017-12-16 | Merge branch 'testsuite-fix-quotes-cmdline' into cli-macro | Luc Van Oostenryck | 2 | -5/+14 |
2017-12-16 | testsuite: allow default args from environment for test commands | Luc Van Oostenryck | 1 | -1/+2 |
2017-12-16 | testsuite: respect command line's quotes & whitespaces | Luc Van Oostenryck | 2 | -6/+7 |
2017-12-16 | testsuite: process extra options without exec | Luc Van Oostenryck | 1 | -7/+4 |
2017-12-13 | testsuite: add test case for quoting of command's arguments | Luc Van Oostenryck | 1 | -0/+8 |
2017-12-13 | fix: accept 'sparse -D M...' | Luc Van Oostenryck | 2 | -5/+8 |
2017-12-13 | add testcase for 'sparse -D M...' | Luc Van Oostenryck | 1 | -0/+13 |
2017-12-10 | Merge remote-tracking branch 'worktree/testsuite-next' | Luc Van Oostenryck | 14 | -91/+92 |
2017-12-08 | testsuite: add support for 'format -a' | Luc Van Oostenryck | 1 | -0/+5 |
2017-12-08 | testsuite: default to shift in the getopt loop | Luc Van Oostenryck | 1 | -9/+1 |
2017-12-08 | testsuite: allow to test only a subdir | Luc Van Oostenryck | 1 | -5/+17 |
2017-12-08 | testsuite: change do_usage text | Luc Van Oostenryck | 1 | -7/+7 |
2017-12-08 | testsuite: move no-arg out of the getopt loop | Luc Van Oostenryck | 1 | -6/+5 |
2017-12-08 | testsuite: move do_test_suite out of the getopt loop | Luc Van Oostenryck | 1 | -2/+1 |
2017-12-08 | testsuite: early return in getopt loop | Luc Van Oostenryck | 1 | -0/+4 |
2017-12-08 | testsuite: validate the 'check-...' tags | Luc Van Oostenryck | 1 | -0/+12 |
2017-12-08 | testsuite: fix invalid 'check-...' tags | Luc Van Oostenryck | 8 | -12/+12 |
2017-12-08 | testsuite: reset 'quiet' at the start of each testcase | Luc Van Oostenryck | 1 | -1/+1 |
2017-12-08 | testsuite: add & use warning() | Luc Van Oostenryck | 1 | -1/+9 |
2017-12-08 | testsuite: move verbose/error() before get_tag_value() | Luc Van Oostenryck | 1 | -17/+19 |
2017-12-08 | testsuite: remove old ugly pattern syntax | Luc Van Oostenryck | 1 | -32/+0 |
2017-12-08 | testsuite: convert to the new pattern syntax | Luc Van Oostenryck | 1 | -1/+1 |
2017-12-08 | testsuite: fix a few more incorrect check-commands | Luc Van Oostenryck | 3 | -3/+3 |
2017-12-08 | testsuite: make the '%.t' rule depends on PROGRAMS too | Luc Van Oostenryck | 1 | -1/+1 |
2017-12-08 | fix: add missing degenerate() for logical not | Luc Van Oostenryck | 2 | -1/+1 |
2017-12-07 | add testcases linearization of degenerated arrays/functions | Luc Van Oostenryck | 3 | -0/+110 |
2017-12-07 | add more testcases for using addresses in conditionals | Luc Van Oostenryck | 6 | -44/+177 |
2017-12-06 | fix: build sparse-llvm on i686s too. | Luc Van Oostenryck | 1 | -1/+1 |
2017-11-20 | testsuite: fix: remove unneeded './' before commands | Luc Van Oostenryck | 13 | -13/+13 |
2017-11-18 | add support of floating-point specific arithmetic ops | Luc Van Oostenryck | 8 | -32/+176 |
2017-11-18 | fix support of floating-point compare | Luc Van Oostenryck | 9 | -26/+270 |
2017-11-18 | add test case for boolean negation on float | Luc Van Oostenryck | 1 | -0/+9 |
2017-11-18 | fix linearize_inc_dec() with floats | Luc Van Oostenryck | 2 | -2/+29 |
2017-11-17 | llvm: only compare void pointers | Luc Van Oostenryck | 1 | -0/+4 |
2017-11-17 | llvm: add support for float initializer | Luc Van Oostenryck | 1 | -0/+3 |
2017-11-17 | llvm: warn instead of assert on global inits | Luc Van Oostenryck | 1 | -1/+6 |
2017-11-17 | llvm: gracefully catch impossible type/value | Luc Van Oostenryck | 1 | -2/+9 |
2017-11-17 | llvm: give names easier to debug | Luc Van Oostenryck | 2 | -6/+6 |
2017-11-17 | llvm: fix creation of sparsec's tmp files | Luc Van Oostenryck | 1 | -2/+2 |
2017-11-17 | llvm: cleanup of output_[ptr]cast() | Luc Van Oostenryck | 1 | -27/+12 |
2017-11-17 | llvm: add support for cast from floats | Luc Van Oostenryck | 2 | -3/+9 |
2017-11-17 | llvm: add support for OP_FPCAST | Luc Van Oostenryck | 2 | -3/+24 |
2017-11-17 | llvm: fix type of bitfields | Luc Van Oostenryck | 1 | -0/+2 |
2017-11-17 | llvm: fix get value from non-anonymous symbol | Luc Van Oostenryck | 3 | -9/+44 |
2017-11-17 | llvm: fix get value from initialized symbol | Luc Van Oostenryck | 1 | -14/+13 |
2017-11-17 | llvm: add support for restricted types | Luc Van Oostenryck | 1 | -0/+1 |
2017-11-17 | llvm: fix mutated OP_[PTR]CAST | Luc Van Oostenryck | 1 | -6/+4 |
2017-11-17 | llvm: fix mutated OP_PHISOURCE | Luc Van Oostenryck | 1 | -1/+1 |
2017-11-17 | llvm: fix mutated OP_SWITCH | Luc Van Oostenryck | 1 | -1/+1 |
2017-11-17 | llvm: fix mutated OP_SEL | Luc Van Oostenryck | 1 | -3/+3 |
2017-11-17 | llvm: fix mutated OP_RET | Luc Van Oostenryck | 1 | -3/+1 |
2017-11-17 | llvm: fix mutating function pointer | Luc Van Oostenryck | 2 | -6/+64 |
2017-11-17 | llvm: take care of degenerated rvalues | Luc Van Oostenryck | 5 | -6/+12 |
2017-11-17 | llvm: fix variadic calls with constants | Luc Van Oostenryck | 2 | -2/+5 |
2017-11-17 | llvm: add testcase for calling variadic functions | Luc Van Oostenryck | 1 | -0/+28 |
2017-11-17 | llvm: add small script to test LLVM generated bytecode | Luc Van Oostenryck | 2 | -1/+16 |
2017-11-17 | llvm: let pseudo_to_value() directly use the type | Luc Van Oostenryck | 1 | -21/+21 |
2017-11-17 | llvm: add test case pointer compare with cast | Luc Van Oostenryck | 1 | -0/+3 |
2017-11-17 | llvm: make value_to_ivalue() more flexible | Luc Van Oostenryck | 2 | -5/+23 |
2017-11-17 | llvm: make value_to_pvalue() more flexible | Luc Van Oostenryck | 1 | -3/+12 |
2017-11-17 | llvm: fix OP_SWITCH has no target | Luc Van Oostenryck | 2 | -3/+249 |
2017-11-17 | llvm: add support for OP_SWITCH with a range | Luc Van Oostenryck | 1 | -10/+7 |
2017-11-17 | llvm: give a name to all values | Luc Van Oostenryck | 1 | -13/+20 |
2017-11-17 | llvm: make pseudo_name() more flexible | Luc Van Oostenryck | 1 | -11/+6 |
2017-11-17 | llvm: fix type of switch constants | Luc Van Oostenryck | 1 | -1/+1 |
2017-11-17 | llvm: variadic functions are not being marked as such | Luc Van Oostenryck | 1 | -1/+1 |
2017-11-17 | llvm: adjust OP_RET's type | Luc Van Oostenryck | 2 | -1/+1 |
2017-11-17 | llvm: give correct type to binops | Luc Van Oostenryck | 4 | -0/+110 |
2017-11-17 | llvm: fix type in comparison with an address constant | Luc Van Oostenryck | 2 | -2/+13 |
2017-11-17 | llvm: fix pointer/float mixup in comparisons | Luc Van Oostenryck | 2 | -2/+24 |
2017-11-17 | llvm: ignore OP_INLINED_CALL | Luc Van Oostenryck | 1 | -1/+0 |
2017-11-17 | llvm: add support for OP_SETVAL with labels | Luc Van Oostenryck | 2 | -0/+16 |
2017-11-17 | llvm: add support for OP_SETVAL with floats | Luc Van Oostenryck | 2 | -1/+25 |
2017-11-17 | llvm: add support for OP_NEG | Luc Van Oostenryck | 1 | -2/+15 |
2017-11-17 | llvm: add test cases for degenerated pointers | Luc Van Oostenryck | 1 | -0/+73 |
2017-11-17 | llvm: add test cases for arrays passed as argument | Luc Van Oostenryck | 1 | -3/+146 |
2017-11-17 | llvm: add test cases for pointers passed as argument | Luc Van Oostenryck | 1 | -0/+43 |
2017-11-17 | llvm: add test cases for symbol's address | Luc Van Oostenryck | 1 | -0/+63 |