aboutsummaryrefslogtreecommitdiffstatshomepage
AgeCommit message (Expand)AuthorFilesLines
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
2017-02-13simplify '(x % 1)' into '0'Luc Van Oostenryck2-0/+8
2017-02-13simplify '(x / -1)' to '-x' (but only for signed division)Luc Van Oostenryck2-0/+7
2017-02-13simplify '(x * -1)' to '-x'Luc Van Oostenryck2-0/+24
2017-02-13simplify '(x / 1)' to 'x'Luc Van Oostenryck2-0/+4
2017-02-13move OP_MUL simplification in a separate functionLuc Van Oostenryck3-0/+43
2017-02-13define __LONG_MAX__ & __SIZEOF_POINTER__Luc Van Oostenryck1-0/+6
2017-02-13add an helper for common predefined macrosLuc Van Oostenryck1-1/+6
2017-02-13define __LP64__ & _LP64 if arch_m64 is enabledLuc Van Oostenryck1-0/+2
2017-02-13fix killing OP_SETVAL instructionsLuc Van Oostenryck2-0/+8
2017-02-13remove 'Escape' from token character classLuc Van Oostenryck1-14/+11
2017-02-13warn on unknown escapes after preprocessingLuc Van Oostenryck4-5/+7
2017-02-13add testcase for wrong early escape conversionLuc Van Oostenryck1-0/+23
2017-02-13remove unused arg in uses/defs functionsLuc Van Oostenryck1-15/+15
2017-02-13validate expression's type in conditionalsLuc Van Oostenryck2-0/+104
2017-02-13add helper: is_scalar_type()Luc Van Oostenryck1-0/+22
2017-02-13fix conditional context test case with voidLuc Van Oostenryck1-1/+1
2017-02-13cleanup kill_instruction()Luc Van Oostenryck1-26/+21
2017-02-13explicitely ignore killing OP_ENTRYLuc Van Oostenryck1-0/+4
2017-02-13fix killing OP_COMPUTEDGOTOLuc Van Oostenryck2-0/+18
2017-02-13fix killing OP_SELECTLuc Van Oostenryck2-0/+17
2017-02-13fix killing OP_CAST & friendsLuc Van Oostenryck2-0/+26
2017-02-13fix killing OP_PHI instructionsLuc Van Oostenryck2-0/+19
2017-02-13kill uses of replaced instructionsLuc Van Oostenryck2-0/+74
2017-02-13fix crash while testing between conditional & unconditional OP_BRLuc Van Oostenryck1-1/+1
2017-02-13fix cast's target type infoLuc Van Oostenryck2-2/+389
2017-02-13C11: teach sparse about '--std={c11,gnu11}'Luc Van Oostenryck2-0/+32
2017-02-13C11: teach sparse about '_Alignas()'Luc Van Oostenryck2-0/+83
2017-02-13C11: teach sparse about '_Alignof()'Luc Van Oostenryck3-0/+14
2017-02-13C11: teach sparse about '_Noreturn'Luc Van Oostenryck2-0/+23
2017-02-13C11: teach sparse about '_Thread_local'Luc Van Oostenryck2-0/+10
2017-02-13fix value of label statementLuc Van Oostenryck2-2/+18
2017-02-13missing load simplificationLuc Van Oostenryck1-7/+3
2017-02-13fix phisrc mixupLuc Van Oostenryck1-7/+3
2017-02-13fix superfluous phisrcLuc Van Oostenryck1-0/+13
2017-02-13volatile loads must not be simplifiedLuc Van Oostenryck2-0/+24
2017-02-13unssa: update comment about the unneeded copiesLuc Van Oostenryck1-0/+4
2017-02-13unssa: eliminate trivial phisrc copiesLuc Van Oostenryck1-0/+22
2017-02-13unssa: try to avoid some OP_PHI copiesLuc Van Oostenryck1-0/+32
2017-02-13unssa: simplify rewrite of OP_PHISOURCELuc Van Oostenryck1-68/+21
2017-02-13unssa: do not try to update livenessLuc Van Oostenryck1-3/+0
2017-02-13fix cast to boolLuc Van Oostenryck4-0/+113
2017-02-13llvm: remove unneeded OP_COPY supportLuc Van Oostenryck1-29/+1
2017-02-13llvm: fix typing when comparing to a constantLuc Van Oostenryck1-17/+32
2017-02-13fix typing error in compound assignmentLuc Van Oostenryck3-5/+25
2017-02-13add support for __int128Luc Van Oostenryck2-0/+68
2017-02-13fix missing element in types declarationLuc Van Oostenryck1-1/+1
2017-02-13recursive phi_defines cannot happenLuc Van Oostenryck1-4/+0
2017-02-13cgcc should not define non-reserved identifiersLuc Van Oostenryck1-4/+4
2017-02-13Update maintainers in the manpageLuc Van Oostenryck1-1/+1
2017-02-13some modifiers need to be preserved by 'typeof()'Luc Van Oostenryck3-3/+8
2017-02-13testsuite: test modifiers preserved by 'typeof()'Luc Van Oostenryck4-0/+171
2017-02-13testsuite: test modifiers preserved by '&' operatorLuc Van Oostenryck1-0/+80
2017-02-13use a shorter name for function-pointer-modifier-inheritance.cLuc Van Oostenryck1-1/+1
2017-02-13testsuite: simplify test function-pointer-inheritanceLuc Van Oostenryck1-11/+2
2017-02-13storage should not be inherited by pointersLuc Van Oostenryck2-2/+2
2017-02-13remove unused field 'multijump' in struct instructionLuc Van Oostenryck1-3/+0
2017-02-13OP_SWITCH should use 'insn->cond' instead of 'insn->target'Luc Van Oostenryck1-1/+1
2017-02-13give comparable label's names to basic blocksLuc Van Oostenryck3-16/+21
2017-02-13let "compile" not crash on boolsLuc Van Oostenryck1-0/+2
2017-02-13make ptrlist walking against robust against empty blocksLuc Van Oostenryck1-3/+26
2017-02-13validation: Check C99 for loop variablesEmily Maier1-0/+33
2017-02-13parse: Add comment to struct statementDaniel Wagner1-1/+1
2017-02-13dissect: s/mode_t/usage_t/ in report_member()Oleg Nesterov1-1/+1
2017-02-13dissect: teach do_initializer() to handle the nested EXPR_IDENTIFIER'sOleg Nesterov1-7/+12
2017-02-13dissect: teach do_expression() to handle EXPR_OFFSETOFOleg Nesterov1-1/+15
2017-02-13add test case for builtin bswap with constant argsLuc Van Oostenryck1-0/+28
2017-02-13implement constant-folding in __builtin_bswap*()Johannes Berg2-3/+60
2017-02-13fix discarded label statementLuc Van Oostenryck2-1/+25
2017-02-13Remove unneeded variable in integer_promotion()Luc Van Oostenryck1-3/+1
2017-02-13Warn on unknown attributes instead of throwing errorsLuc Van Oostenryck6-1/+33
2017-02-13cleanup: remove evaluate_arguments()'s unused argumentLuc Van Oostenryck1-2/+2
2017-01-27make 'ignored_attributes[]' staticLuc Van Oostenryck1-1/+1
2017-01-27linearize: Emit C99 declarations correctlyEmily Maier1-0/+4
2017-01-27add missing #include "char.h" to char.cLuc Van Oostenryck1-0/+1
2017-01-27Fix type checking of variadic functionsLuc Van Oostenryck2-1/+63
2017-01-27sparse: update __builtin_object_size() prototypeLance Richardson1-1/+1
2017-01-27fix mixup in "Handle SForced in storage_modifiers"Luc Van Oostenryck1-3/+3
2016-11-17Handle SForced in storage_modifiersJeff Layton1-2/+2
2016-10-26sparse: add no_sanitize_address as an ignored attributeRui Teng2-0/+11
2016-10-13sparse: ignore __assume_aligned__ attributeLance Richardson2-0/+8
2016-10-13sparse: add 'alloc_align' to the ignored attributesRamsay Jones2-0/+40
2016-10-13Fix warning compiling sparse-llvmChristopher Li2-2/+2
2016-02-23Do not drop 'nocast' modifier when taking the address.Luc Van Oostenryck2-1/+198
2016-02-04Fix size calculation of unsized bool arrayLuc Van Oostenryck2-1/+48
2015-08-15Add default case to switches on enum variablesTony Camuso2-1/+5
2015-08-15.gitignore: add cscope and Qt project filesTony Camuso1-0/+3
2015-08-04ptrlist: reading deleted items in NEXT_PTR_LIST()Dan Carpenter1-0/+2
2015-06-14validation/prototype: regression for skipping prototypesAzat Khuzhin1-0/+6
2015-06-14sparse, llvm: compile: skip function prototypes to avoid SIGSEGVAzat Khuzhin1-0/+11
2015-06-11sparse/parse.c: ignore hotpatch attributeHeiko Carstens1-0/+2
2015-04-21Add tests for the builtin INF and nan() functions.Michael Stefaniuc1-0/+13
2015-03-13Ignore pure attribute in assignementArd Biesheuvel2-1/+17
2015-03-13Add a define for __builtin_ms_va_copy()Michael Stefaniuc1-0/+1
2015-03-13Add the __builtin functions needed for INFINITY and nan().Michael Stefaniuc1-0/+11
2015-02-08Teach sparse about the __COUNTER__ predefined macroLuc Van Oostenryck6-0/+46
2015-02-06Make macro expanded string immutableChristopher Li3-11/+29
2015-01-28s390x: add the proper defines for data typesChristian Borntraeger1-0/+8
2014-12-12Ptr list sorting should use memmove instead of memcpyChristopher Li1-1/+1
2014-11-10build: allow use of PKG_CONFIG to override pkg-configAaro Koskinen1-6/+7
2014-11-10compile-i386.c: don't ignore return value of write(2)Ramsay Jones1-4/+4
2014-11-10parse.c: remove duplicate 'may_alias' ignored_attributesRamsay Jones1-2/+0
2014-11-10cgcc: avoid passing a sparse-only option to ccRamsay Jones1-2/+2
2014-11-10test-suite: remove bashism to avoid test failuresRamsay Jones1-1/+1
2014-10-25teach next_designators() use array_element_offset()Christopher Li1-1/+1
2014-10-10cgcc: use $ccom to set $multiarch_dir if not specifiedRamsay Jones1-0/+2
2014-10-10cgcc: use only the cc command to determine $gcc_base_dirRamsay Jones1-1/+2
2014-10-10Add support for multiarch system header filesRamsay Jones4-1/+36
2014-10-10don't run sparse{c,i} tests when sparse-llvm is disabledRamsay Jones1-2/+24
2014-10-10Makefile: suppress error message from shellRamsay Jones1-9/+7
2014-10-10don't call isdigit/tolower with a char argumentRamsay Jones2-3/+3
2014-10-10sparse: add 'gnu_inline' to the ignored attributesRamsay Jones2-0/+23
2014-10-10Add the __restrict__ keywordRamsay Jones5-2/+75
2014-10-10sparse: treat function pointers as pointers to const dataArd Biesheuvel1-0/+9
2014-10-10rename -Werror to -Wsparse-errorChristopher Li5-13/+8
2014-09-28sparse: Make -Werror turn warnigns into errorsThomas Graf6-27/+49
2014-09-25Use LLVM_CONFIG instead of llvm-config in MakefilePavel Roskin1-1/+1
2014-09-25sparse-llvm: Fix LLVM 3.5 linker errorsOmar Sandoval1-0/+1
2014-09-18Fix initializers in anonymous structs and unionsLinus Torvalds2-2/+19
2014-08-02Make same_symbol list share the same scopeChristopher Li3-0/+16
2014-08-02Fix scoping of extern symbols in block scopeLinus Torvalds1-5/+6
2014-07-17round up the array element size to byte alignChristopher Li3-2/+11
2014-07-16sparse: make bits_to_bytes round up instead of downJeff Layton3-2/+12
2014-06-29Minor clean up for option handlingChristopher Li1-20/+24
2014-06-28lib.c: skip --param parametersAndy Shevchenko1-2/+22
2014-04-17parse: support c99 [static ...] in abstract array declaratorsCody P Schafer3-1/+32
2014-04-15sparse{i,c}: use LLVM_CONFIG to find llc and lliCody P Schafer2-2/+4
2014-04-15build: allow use of LLVM_CONFIG to override llvm-config config scriptCody P Schafer1-6/+7
2014-04-03Fix error at anoymous unionsLinus Torvalds1-12/+2
2014-04-03Add test case for the ioc type checkHans Verkuil1-0/+17
2014-04-03Add test case for anonymous union initializerHans Verkuil1-0/+11
2014-04-03Add test case for extern arrayHans Verkuil1-0/+14
2014-04-01Use any previous initializer to size a symbolLinus Torvalds1-6/+18
2014-04-01Add warning about duplicate initializersLinus Torvalds1-0/+8
2014-04-01Support GCC's transparent unionsJohn Keeping4-3/+60
2014-04-01evaluate: split out implementation of compatible_assignment_typesJohn Keeping1-23/+34
2014-04-01validation/sizeof-bool: fix broken test caseJohn Keeping1-0/+1
2014-02-27sparse: Allow override of sizeof(bool) warningJoe Perches4-1/+13
2014-01-29Define __CHAR_BIT__Emilio G. Cota2-0/+8
2014-01-29Sparse 0.5.0v0.5.0Christopher Li1-1/+1
2014-01-29Fix make dist failureChristopher Li1-1/+1
2013-12-21Sparse 0.5.0 rc1Christopher Li1-1/+1
2013-12-21sparse: add built-in atomic memory access identifiersKim Phillips2-2/+47
2013-12-21gitignore: add 'version.h'Emilio G. Cota1-0/+1
2013-12-09Update the information in README about using the library.James Westby1-21/+8
2013-11-29sparse: Also check bit_offset when checking implicit castsFranz Schrober1-1/+2
2013-11-29FAQ: Remove outdated sections about the licenseFranz Schrober1-24/+0
2013-11-29sparse: Relicense under the MIT licenseFranz Schrober33-259/+566
2013-11-29Revert "Fix mistaken comparison that becomes a no-op."Franz Schrober1-1/+1
2013-11-29Revert "Update the information in README about using the library."Franz Schrober1-8/+21
2013-11-29Merge branch 'Novafora' of git://git.zytor.com/users/hpa/sparse/sparse into l...Christopher Li1-0/+41
2013-07-25Merge branch 'llvmcore'Christopher Li11-309/+320
2013-07-25sparse: add __builtin_va_arg_pack() and __builtin_va_arg_pack_len()Jeff Layton2-0/+22
2013-05-27Fix expression type for floating point negation ('!')Xi Wang1-1/+1
2013-05-27Fix result type of relational and logical operatorsXi Wang4-19/+46
2013-05-23symbol.c: Set correct size of array from parenthesized string initializerRamsay Jones2-4/+53
2013-05-21sparse, llvm: die if errorXi Wang1-1/+4
2013-05-21sparse, llvm: set more data attributesXi Wang1-0/+6
2013-05-21sparse, llvm: fix struct name generationXi Wang2-6/+9
2013-05-21sparse, llvm: cache symbol_type() resultXi Wang1-1/+10
2013-05-21sparse, llvm: fix array sizeXi Wang1-1/+3
2013-05-21sparse, llvm: use LLVM_DEFAULT_TARGET_TRIPLEXi Wang1-1/+5
2013-05-20sparse, llvm: Use LLVM_HOSTTRIPLEPekka Enberg1-1/+1
2013-05-19sparse, llvm: set target specificationXi Wang2-3/+55
2013-05-19sparse, llvm: improve pointer arithmetic handlingXi Wang1-12/+26
2013-05-19sparse, llvm: add a struct access test caseJonathan Neuschäfer1-0/+28
2013-05-19sparse, llvm: base load/store address type on insn_symbol_type()Jonathan Neuschäfer1-3/+4
2013-05-19sparse, llvm: de-duplicate load/store address calculation codeJonathan Neuschäfer1-17/+14
2013-05-19sparse, llvm: Fix resulting type of store address calculationsJonathan Neuschäfer2-1/+13
2013-05-18sparse, llvm: simplify function generationXi Wang3-163/+53
2013-05-18sparse, llvm: fix phi generationXi Wang2-91/+54
2013-05-17char.c: Fix parsing of escapesRamsay Jones2-3/+18
2013-05-15Trivial: Remove redundant Makefile variableChristopher Li1-2/+1
2013-05-15sparse, llvm: fix link errorsXi Wang1-2/+2
2013-05-11fix SIGFPE caused by signed division overflowXi Wang3-0/+35
2013-04-26Allow forced attribute in function argumentv0.4.5-rc1Christopher Li4-2/+22
2013-04-21Support #pragma onceJosh Triplett4-1/+16
2013-04-21Define __SIZEOF_POINTER__Josh Triplett2-5/+11
2013-04-19Add description for -Winit-cstring optionMasatake YAMATO1-0/+18
2013-04-19Test case for -Winit-cstring optionMasatake YAMATO1-0/+11
2013-04-19Warn about initialization of a char array with a too long constant C string.Masatake YAMATO3-4/+11
2013-04-08Proper variable length array warningChristopher Li5-9/+27
2013-03-06There's no current way to know the versionJoe Perches2-1/+34