summaryrefslogtreecommitdiffstatshomepage
AgeCommit message (Expand)AuthorFilesLines
2017-08-17Merge remote-tracking branch 'luc/master'v0.5.1Christopher Li0-0/+0
2017-08-17Sparse v0.5.1Luc Van Oostenryck1-1/+1
2017-08-17Sparse 0.5.1Christopher Li1-1/+1
2017-08-11Bump sparse's version to -rc5v0.5.1-rc5Luc Van Oostenryck1-1/+1
2017-08-11Merge remote-tracking branch 'luc/remove-singlestore-shortcut'Christopher Li4-37/+24
2017-08-11Remove single-store shortcutLuc Van Oostenryck2-38/+2
2017-08-10documentation: update email reference linkRandy Dunlap1-1/+1
2017-08-10test-inspect: Detect gtk3 then gtk2 packageChristopher Li1-7/+14
2017-08-10test-inspect: handle special case iter==NULLChristopher Li1-1/+2
2017-08-10Documents: project ideasChristopher Li1-0/+52
2017-08-10Adding document for sparse patch submit processChristopher Li1-0/+21
2017-08-09Adding gcc attribute noipa etcChristopher Li1-0/+2
2017-08-09Makefile: pass -Wno-vla to sparse while checking pre-process.cRamsay Jones1-1/+4
2017-08-09lib: workaround the 'redeclared with different type' errorsRamsay Jones2-2/+9
2017-08-09fix warnings report by selfcheckChristopher Li3-2/+4
2017-08-09Adding _Pragma()Christopher Li1-0/+1
2017-08-09Makefile: add selfcheck targetChristopher Li1-2/+12
2017-08-09Makefile: clean up and simplifyChristopher Li1-10/+8
2017-08-09Add test case for the wine dead loop bugChristopher Li1-0/+27
2017-08-09Merge remote-tracking branch 'luc/fix-type-bad-cond-expr-v2'Christopher Li4-0/+70
2017-08-09Merge remote-tracking branch 'luc/fix-nested-pseudo-users-deletion-v5'Christopher Li3-4/+18
2017-08-09Merge remote-tracking branch 'luc/fix-fuzzy-crashes-v3'Christopher Li13-26/+178
2017-08-09testsuite: add support for commands with timeoutLuc Van Oostenryck3-0/+23
2017-08-08mark pseudo users as deleted instead of removing themLuc Van Oostenryck1-2/+3
2017-08-08ptrlist: avoid iteration on NULL entriesLuc Van Oostenryck1-0/+4
2017-08-04ptrlist: add MARK_CURRENT_DELETEDLuc Van Oostenryck1-0/+8
2017-08-04ptrlist: adjust ptr_list_size for the new ->rm fieldLuc Van Oostenryck1-1/+1
2017-08-04ptrlist: add a counter for the number of removed elemnetsLuc Van Oostenryck1-1/+2
2017-08-04fix: give a type to bad cond expr with known conditionLuc Van Oostenryck2-0/+39
2017-08-04take comma expr in account for constant valueLuc Van Oostenryck2-0/+31
2017-07-31fix crash with sym->bb_target == NULLLuc Van Oostenryck2-1/+14
2017-07-31fix some crashes in add_dominators()Luc Van Oostenryck2-0/+24
2017-07-31fix crash in rewrite_branch()Luc Van Oostenryck2-1/+25
2017-07-31fix crash when ep->active is NULLLuc Van Oostenryck2-2/+19
2017-07-31fix BB dependencies on phi-nodesLuc Van Oostenryck1-16/+15
2017-07-31fix infinite simplification loopsLuc Van Oostenryck3-1/+29
2017-07-31fix ptrlist corruption while killing unreachable BBsLuc Van Oostenryck6-5/+52
2017-07-13Adding gcc attribute no_gccisrChristopher Li1-0/+1
2017-07-04bump sparse's version to 0.5.1-rc4v0.5.1-rc4Christopher Li1-1/+1
2017-07-04Add full list of gcc attributeChristopher Li2-104/+214
2017-07-04Let create_symbol check for previous same symbolChristopher Li4-8/+19
2017-06-23Adding ignored attribute optimizev0.5.1-rc3Christopher Li2-2/+20
2017-06-21bump sparse's version to -rc3Luc Van Oostenryck1-1/+1
2017-06-21cgcc: teach cgcc about armLuc Van Oostenryck1-0/+5
2017-06-21cgcc: teach cgcc about ppc64[le]Luc Van Oostenryck1-0/+10
2017-06-21cgcc: teach cgcc about arm64Luc Van Oostenryck1-0/+5
2017-06-21teach sparse about __BYTE_ORDER__ & __ORDER_{BIG,LITTLE}_ENDIAN__Luc Van Oostenryck3-0/+12
2017-06-21teach sparse about __{BIG,LITTLE}_ENDIAN__Luc Van Oostenryck3-0/+25
2017-06-21teach sparse about -m{big,little}-endianLuc Van Oostenryck2-1/+15
2017-06-21dissect: use built_in_ident() instead of MK_IDENT()Luc Van Oostenryck2-14/+3
2017-06-21fix: __builtin_bswap{16,32,64}() constantnessLuc Van Oostenryck2-1/+9
2017-06-21add fallback for missing __builtin_bswapXX()Luc Van Oostenryck2-3/+58
2017-06-21fix: try_to_simplify_bb eargernessLuc Van Oostenryck2-0/+60
2017-06-21fix OP_PHI usage in try_to_simplify_bb() only when non-bogusLuc Van Oostenryck1-29/+9
2017-06-15fix: add missing examine in evaluate_dereference()Luc Van Oostenryck3-0/+39
2017-06-15add support for -fmemcpy-max-countLuc Van Oostenryck5-3/+30
2017-06-15add support for -Wmemcpy-max-countLuc Van Oostenryck5-2/+14
2017-06-15memcpy()'s byte count is unsignedLuc Van Oostenryck1-3/+3
2017-06-15cgcc: filter-out '-fdump-linearize[=...]'Luc Van Oostenryck1-0/+1
2017-06-15cgcc: add missing warning names to check_only_option()Luc Van Oostenryck1-1/+1
2017-06-15cgcc: alphasort warning names in check_only_option()Luc Van Oostenryck1-1/+1
2017-06-15keep the warnings table alphabetically sortedLuc Van Oostenryck1-1/+1
2017-06-14Merge branches 'quiets-bool-cast-restricted-v3', 'error-vs-warnings-v2', 'imp...Luc Van Oostenryck70-224/+1228
2017-06-13Add more declarations for more builtin functionsLuc Van Oostenryck1-0/+44
2017-06-10finer control over error vs. warningsLuc Van Oostenryck3-2/+10
2017-06-10use NULL instead of 0 in testcases.Luc Van Oostenryck1-3/+3
2017-06-08ret-void: warn for implicit typeLuc Van Oostenryck6-1/+41
2017-06-08ret-void: add test case for toplevel asmLuc Van Oostenryck1-0/+7
2017-05-28teach cgcc about OSX aka darwinLuc Van Oostenryck1-0/+3
2017-05-28testsuite: avoid fork+execing basenameLuc Van Oostenryck1-3/+4
2017-05-28testsuite: remove unneeded './' before commandsLuc Van Oostenryck22-22/+22
2017-05-28testsuite: use shell arithmetic instead of fork-execing exprLuc Van Oostenryck1-6/+6
2017-05-28testsuite: grep the output patterns only when neededLuc Van Oostenryck1-14/+19
2017-05-28testsuite: grep the expected output only when neededLuc Van Oostenryck1-6/+4
2017-05-28testsuite: get all tags in onceLuc Van Oostenryck1-34/+43
2017-05-19Merge branches 'dump-macros-v2', 'fix-predefined-size', 'fix-bool-context', '...v0.5.1-rc1Luc Van Oostenryck33-41/+663
2017-05-19let -dD report macro definitionsLuc Van Oostenryck5-0/+37
2017-05-19teach sparse how to handle -dD flagLuc Van Oostenryck2-0/+18
2017-05-19fix definition of __SCHAR_MAX__ & friendsLuc Van Oostenryck1-7/+10
2017-05-19avoid to redefine __INT_MAX__ and friendsLuc Van Oostenryck1-4/+0
2017-05-19fix hardcoded size of wide charsLuc Van Oostenryck3-2/+6
2017-05-19teach sparse how to dump macro definitionsLuc Van Oostenryck2-0/+56
2017-05-19define ident_listLuc Van Oostenryck1-0/+6
2017-05-19avoid warning on explicit 'bool <- restricted' castsLuc Van Oostenryck4-10/+21
2017-05-19more tests for implicit 'bool <- restricted' castsLuc Van Oostenryck1-1/+10
2017-05-19add support for a new flag: -fdump-linearize[=only]Luc Van Oostenryck4-0/+34
2017-05-19remove origval from struct access_dataLuc Van Oostenryck1-6/+0
2017-05-19remove alignment from struct access_dataLuc Van Oostenryck1-2/+1
2017-05-19fix implicit zero initializer.Luc Van Oostenryck4-0/+186
2017-05-19add test case for linearize_initializer() of bitfieldsLuc Van Oostenryck1-0/+27
2017-05-19remove bit_size & bit_offset from struct access_dataLuc Van Oostenryck1-8/+8
2017-05-19returns the correct type when evaluating NULLLuc Van Oostenryck1-1/+1
2017-05-19fix: kill old branch in insert_branch()Luc Van Oostenryck3-2/+24
2017-05-15testsuite: cleanup result filesLuc Van Oostenryck1-0/+1
2017-05-15use -fmem-report to report allocation statsLuc Van Oostenryck7-0/+18
2017-05-15teach sparse how to handle '-fmem-report'Luc Van Oostenryck2-4/+6
2017-05-15add helper handle_simple_switch()Luc Van Oostenryck1-0/+19
2017-05-15add show_allocation_stats()Luc Van Oostenryck3-0/+58
2017-05-15add get_<allocator>_stats()Luc Van Oostenryck2-0/+20
2017-05-12Merge branches 'quiets-bool-cast-restricted-v2', 'keyword-cleanup-v2', 'not-s...Luc Van Oostenryck10-94/+361
2017-05-12keyword: no pre-declaration needed for attribute namesLuc Van Oostenryck1-56/+0
2017-05-12keyword: add a comment about NS_TYPEDEF & reserved keywordsLuc Van Oostenryck1-0/+1
2017-05-12keyword: add more reserved keywords to the test caseLuc Van Oostenryck1-39/+135
2017-05-12keyword: explicitly add C99 & C11 keywordsLuc Van Oostenryck2-1/+28
2017-05-12keyword: regroup the [reserved] keywordsLuc Van Oostenryck1-4/+10
2017-05-12keyword: add test case for reserved '_Static_assert'Luc Van Oostenryck1-0/+2
2017-05-12sparse: add support for _Static_assertLance Richardson3-1/+116
2017-05-12fix missing reloadLuc Van Oostenryck4-1/+74
2017-05-12fix boolean context for OP_AND_BOOL & OP_OR_BOOLLuc Van Oostenryck3-4/+53
2017-05-12ignore VOID when trying to if-convert phi-nodesLuc Van Oostenryck2-6/+54
2017-05-12fix: kill unreachable BBs after killing a childLuc Van Oostenryck2-1/+26
2017-05-12let kill_unreachable_bbs() clear REPEAT_CFG_CLEANUPLuc Van Oostenryck1-0/+2
2017-05-12introduce REPEAT_CFG_CLEANUPLuc Van Oostenryck1-0/+1
2017-05-11avoid useless warning for 'bool <- restricted type' conversionLuc Van Oostenryck4-6/+31
2017-04-30Merge branches 'sent/float-expand-v2', 'sent/fix-kill-ttsb-v2', 'sent/fix-con...Luc Van Oostenryck10-5/+156
2017-04-30be more careful with concat_user_list()Luc Van Oostenryck1-1/+2
2017-04-01fix OP_PHI usage in try_to_simplify_bb(), correctlyLuc Van Oostenryck2-1/+69
2017-03-31avoid crash with test-linearize -vvLuc Van Oostenryck1-0/+2
2017-03-27fix expansion of integers to floatsLuc Van Oostenryck3-2/+393
2017-03-27do not depends on limits.h to test __CHAR_BIT__Luc Van Oostenryck2-7/+16
2017-03-27fix cast to pointer to floating-pointLuc Van Oostenryck2-2/+14
2017-03-27fix test validation/div.cLuc Van Oostenryck1-10/+12
2017-03-27predefine __SIZEOF_INT__ & friendsLuc Van Oostenryck2-0/+35
2017-03-27predefine __INT_MAX__ and friendsLuc Van Oostenryck2-5/+36
2017-03-27fix test for cast to bool on 32bit machinesLuc Van Oostenryck2-2/+2
2017-03-22fix is_scalar_type()Luc Van Oostenryck1-2/+0
2017-03-22fix evaluation of a function or array symbol in conditionalsLuc Van Oostenryck2-0/+15
2017-03-22warn if testing the address of an arrayLuc Van Oostenryck2-0/+29
2017-03-22add is_array_type()Luc Van Oostenryck1-0/+7
2017-03-22warn if testing the address of a functionLuc Van Oostenryck2-1/+22
2017-03-22add is_func_type()Luc Van Oostenryck1-0/+7
2017-03-22teach sparse about -WaddressLuc Van Oostenryck2-0/+3
2017-03-06use VOID instead of directly using &void_pseudoLuc Van Oostenryck1-1/+1
2017-03-06move 'extern with initializer' validation after the validate methodLuc Van Oostenryck2-5/+6
2017-03-06check the storage of C99 for-loop initializersLuc Van Oostenryck2-2/+12
2017-03-06add an optional validation method to external_declaration()Luc Van Oostenryck3-5/+10
2017-03-06add test cases for storage of c99 for-loop declarationsLuc Van Oostenryck1-0/+23
2017-03-06add test case for scope of C99 for-loop declarationsLuc Van Oostenryck1-0/+18
2017-03-06replace test for c99 for-loop initializersLuc Van Oostenryck1-24/+12
2017-03-06remove unused helper is_branch_goto()Luc Van Oostenryck1-4/+0
2017-03-06split OP_BR between unconditional & conditional: OP_CBRLuc Van Oostenryck8-34/+179
2017-03-04fix size of loaded bitfieldsLuc Van Oostenryck2-1/+44
2017-03-04fix usage in simplify_seteq_setne()Luc Van Oostenryck1-2/+3
2017-03-04ignore whole-range overlapping initializerLuc Van Oostenryck4-26/+19
2017-03-04fix checking of overlapping initializerLuc Van Oostenryck2-3/+23
2017-03-04allow to warn on all overlapping initializersLuc Van Oostenryck4-2/+38
2017-03-04add test case for warnings about overlapping initializersLuc Van Oostenryck1-0/+88
2017-03-04use option: '-Woverride-init'Luc Van Oostenryck6-0/+46
2017-03-04Allow casting to a restricted type if !restricted_valueEdward Cree2-1/+45
2017-03-04make -Wbitwise operational againLuc Van Oostenryck2-3/+15
2017-02-27add missing braces around FOR_EACH_PTR loopLuc Van Oostenryck1-2/+2
2017-02-27fix expansion cost of pure functionsLuc Van Oostenryck1-1/+1
2017-02-23CSE: avoid hashing removed instructionsLuc Van Oostenryck1-0/+2
2017-02-23CSE: use commutativity to identify equivalent instructionsLuc Van Oostenryck2-8/+36
2017-02-23CSE: add test cases for comparisons dualityLuc Van Oostenryck1-0/+34
2017-02-16simplify float-to-float casts that doesn't change sizeLuc Van Oostenryck2-0/+17
2017-02-16fix OP_PHI usage in try_to_simplify_bb()Luc Van Oostenryck2-0/+30
2017-02-16use kill_instruction() when killing any instructions during CSELuc Van Oostenryck2-6/+22
2017-02-16use kill_instruction() when killing an OP_PHI during CSELuc Van Oostenryck1-9/+1
2017-02-16fix killing of rewritten loadsLuc Van Oostenryck2-1/+17
2017-02-16add killing of storesLuc Van Oostenryck2-0/+23
2017-02-16add killing of non-volatile loadsLuc Van Oostenryck2-0/+23
2017-02-16fix killing OP_CALL via pointersLuc Van Oostenryck1-0/+2
2017-02-16add killing of pure callsLuc Van Oostenryck2-0/+28
2017-02-16kill_instruction() may need to be forced or notLuc Van Oostenryck3-4/+21
2017-02-16fix killing of otherwise not-handled instructionsLuc Van Oostenryck1-1/+3
2017-02-16remove unused clear_phi()Luc Van Oostenryck1-10/+0
2017-02-16fix clear_phi(), replace it by kill_instruction()Luc Van Oostenryck1-3/+3
2017-02-16fix killing of OP_PHIsLuc Van Oostenryck2-1/+10
2017-02-16add helper kill_use_list()Luc Van Oostenryck1-0/+10
2017-02-16add killing of OP_PHISOURCEsLuc Van Oostenryck2-0/+24
2017-02-16add killing of OP_SLICEsLuc Van Oostenryck2-0/+20
2017-02-16fix show-parse()'s labelsLuc Van Oostenryck1-3/+3
2017-02-16remove unused field 'goto_bb' in struct statementLuc Van Oostenryck1-4/+0
2017-02-16remove unused field 'multijmp' in struct statementLuc Van Oostenryck1-5/+0
2017-02-16cleanup: there is no 'struct phi' to allocateLuc Van Oostenryck1-1/+0
2017-02-13testsuite: quieter error reporting for 'known-to-fail'Luc Van Oostenryck1-0/+2
2017-02-13testsuite: allow quieter error reportingLuc Van Oostenryck1-2/+2
2017-02-13testsuite: get 'check-known-to-fail' earlierLuc Van Oostenryck1-4/+4
2017-02-13testsuite: use 'error' instead of 'info' for successful tests known to failLuc Van Oostenryck1-1/+1
2017-02-13testsuite: check the nbr of times a pattern should be presentLuc Van Oostenryck2-0/+32
2017-02-13testsuite: add some selfcheckingLuc Van Oostenryck3-0/+30
2017-02-13testsuite: check patterns presence or absence in outputLuc Van Oostenryck2-0/+62
2017-02-13allow to launch the test suite from the project root dirLuc Van Oostenryck1-0/+2
2017-02-13testsuite: report as error tests known to fail but which succeedLuc Van Oostenryck1-8/+21
2017-02-13testsuite: add tag to ignore the output/errorLuc Van Oostenryck2-0/+8
2017-02-13testsuite: add a simple test for -Wenum-mismatchLuc Van Oostenryck1-0/+19
2017-02-13testsuite: simplify the ioc-typecheck caseLuc Van Oostenryck1-9/+3
2017-02-13testsuite: make tests known to fail effectively failLuc Van Oostenryck2-0/+10
2017-02-13testsuite: give a proper name to the 'binary-constant' testLuc Van Oostenryck1-1/+1
2017-02-13expand __builtin_bswap*() with constant argsLuc Van Oostenryck6-33/+116
2017-02-13let identical symbols share their evaluate/expand methodsLuc Van Oostenryck1-1/+3
2017-02-13move evaluation & expansion of builtins in a separate fileLuc Van Oostenryck6-184/+248
2017-02-13add support for LLP64 archLuc Van Oostenryck1-7/+27
2017-02-13simplify '(x || x)' and '(x && x)'Luc Van Oostenryck2-4/+16
2017-02-13simplify comparisons followed by an equality test against 0 or 1Luc Van Oostenryck4-0/+110
2017-02-13add warning option '-Wtautological-compare'Luc Van Oostenryck4-0/+42
2017-02-13simplify '(x op x)' to '0', '1' or 'x'Luc Van Oostenryck2-0/+84
2017-02-13simplify '(x || 1)' to '1'Luc Van Oostenryck2-1/+57
2017-02-13simplify '~(~x)' and '-(-x)' to 'x'Luc Van Oostenryck2-0/+32