aboutsummaryrefslogtreecommitdiffstatshomepage
AgeCommit message (Expand)AuthorFilesLines
2005-11-21[PATCH] Add a new opcode: OP_COPY.Luc Van Oostenryck2-0/+8
2005-11-20Simplify some more instructionsLinus Torvalds1-2/+28
2005-11-20Remove totally bogus phi-source liveness thing.Linus Torvalds1-13/+0
2005-11-19Evaluate expressions fully when doing type comparisons on case statementsLinus Torvalds1-6/+8
2005-11-16Fix up stupid thinko in K&R parameter parsing.Linus Torvalds1-22/+26
2005-11-16Re-name "error()" function to "sparse_error()"Linus Torvalds11-125/+125
2005-11-16[PATCH] skip already evaluated symbolsMitesh Shah2-1/+5
2005-11-16Fix K&R argument scopingLinus Torvalds1-1/+8
2005-11-16Integer promotion: leave sufficiently large integer types as themselvesLinus Torvalds1-4/+13
2005-11-03Make switch/case statements check type compatibilityLinus Torvalds1-5/+41
2005-11-03Cast all enum values to the final typeLinus Torvalds1-0/+22
2005-11-03Make sure we keep enum values in a sufficiently large type for parsingLinus Torvalds1-2/+17
2005-11-02Add ".gitignore" fileLinus Torvalds1-0/+17
2005-11-02Handle symbols from "-include" file tooLinus Torvalds8-13/+26
2005-09-30Make sure to be more careful about marking symbols assignedLinus Torvalds1-2/+35
2005-09-26Simplify constant array (or structure) dereferences furtherLinus Torvalds1-39/+46
2005-09-26Teach dereference expansion to look into constant array dereferencesLinus Torvalds1-12/+53
2005-09-24Do stupid and crappy CSE on casts.Linus Torvalds1-0/+25
2005-09-24[PATCH] handle -G x switch for mipsAtsushi Nemoto1-0/+9
2005-09-22Turn the "incorrect type" error back into a warningLinus Torvalds1-1/+1
2005-09-22[PATCH] replaced warnings with errors.Mitesh Shah9-120/+122
2005-09-15Add various declarations for more builtin functionsLinus Torvalds1-1/+10
2005-09-15Make sure that when we define __OPTIMIZE[_SIZE]_ we define it to somethingLinus Torvalds1-2/+2
2005-09-14[PATCH] add support for -imacrosSam Ravnborg2-2/+9
2005-09-10[PATCH] sparse: add __GNUC_PATCHLEVEL__Alexey Dobriyan1-0/+3
2005-09-09[PATCH] More address space checkingviro@ZenIV.linux.org.uk3-29/+51
2005-09-09Warn about undefined preprocessor symbols at expansion time, not parse timeLinus Torvalds6-3/+22
2005-09-09[PATCH] Fix address space ordering problemviro@ZenIV.linux.org.uk1-1/+2
2005-08-17[PATCH] enum: improve error messagesOleg Nesterov2-6/+3
2005-08-17[PATCH] enum: fix sparse segfault with incomplete enumOleg Nesterov2-2/+8
2005-08-15Make 'cgcc' work at least half-way betterLinus Torvalds1-1/+1
2005-08-15Fix parsing of top-level asm statementsLinus Torvalds1-6/+4
2005-08-15Add __OPTIMIZE[_SIZE]__ predefinesLinus Torvalds2-2/+22
2005-08-15Clean up iterator handlingLinus Torvalds2-4/+5
2005-08-14[PATCH] de-anonymize typedefsOleg Nesterov1-2/+6
2005-08-11Make delete_last_instruction() use the new undo_ptr_list_last() fnLinus Torvalds1-1/+1
2005-08-11Add 'undo_ptr_list_last()' helper functionLinus Torvalds2-0/+22
2005-08-06Have more bits for "stream number" in "struct pos"Linus Torvalds1-2/+2
2005-08-03Don't overwrite built-in macros when redefining them.Linus Torvalds1-5/+19
2005-08-03Update the calling interface to "sparse()".Linus Torvalds15-65/+100
2005-08-03Get closer to parsing multiple files correctly.Linus Torvalds3-39/+65
2005-08-03Add function to "protect" allocations from being dropped laterLinus Torvalds2-2/+13
2005-08-02Don't free expressions after preprocessingLinus Torvalds1-1/+2
2005-08-02Add DEBUG mode, which enables various expensive debug optionsLinus Torvalds2-0/+9
2005-08-02Make types have file scope, not global scopeLinus Torvalds2-7/+9
2005-08-02Make "sparse()" handle multiple input files on the command lineLinus Torvalds1-48/+65
2005-08-02Make macros have file scopeLinus Torvalds3-1/+15
2005-08-02When dropping all allocations, clear the freelist tooLinus Torvalds1-0/+1
2005-08-02Start work on proper scoping with multiple filesLinus Torvalds3-10/+26
2005-07-11Don't warn about "nocast" warnings that only change "const"ness.Linus Torvalds1-4/+20
2005-07-03Add "__builtin_offsetof()" to work with newer gcc'sLinus Torvalds1-0/+1
2005-06-30[PATCH] FAQ: add sparse git repositoryMichael S. Tsirkin1-0/+1
2005-06-27[PATCH] makes some needlessly global code staticLuc Van Oostenryck3-15/+15
2005-06-27[PATCH] remove multi-inclusion guard from target.cLuc Van Oostenryck1-5/+0
2005-06-26[PATCH] avoid segfault in add_asm_output() after a parse error in asm statementLuc Van Oostenryck1-1/+1
2005-06-26[PATCH] avoid segafult after parse errors in castsLuc Van Oostenryck2-0/+9
2005-06-26[PATCH] avoid segfault after parse errors in assignementsLuc Van Oostenryck2-0/+9
2005-06-26[PATCH] avoid segfault after parse errors in array designated initializerLuc Van Oostenryck2-0/+8
2005-06-26[PATCH] avoid segfault in check_byte_count()Luc Van Oostenryck2-0/+8
2005-06-26[PATCH] avoid segfault in linearize_asm_statement() after a parse error in as...Luc Van Oostenryck1-1/+1
2005-06-26[PATCH] Avoid segfault when code is present after a goto statementLuc Van Oostenryck1-2/+2
2005-06-21Be more careful about linearizing conditionalsLinus Torvalds1-3/+7
2005-06-21[PATCH] Fix compile warning in symbol.cMika Kukkonen1-1/+1
2005-06-20[PATCH] segfault on bad ternary conditionalLuc Van Oostenryck2-1/+12
2005-06-20[PATCH] __attribute__ handling for attributes used in the userlandPeter Jones4-7/+37
2005-06-19Initial cut at __builtin_expect() implementationLinus Torvalds1-0/+22
2005-06-19Default to reporting the same GNU C version as the host compilerLinus Torvalds1-2/+8
2005-06-19Fix assignment and conditional expression parsing with no left side.Linus Torvalds1-2/+2
2005-06-19Fix SIGSEGV on assignment to bad left side.Linus Torvalds1-2/+2
2005-06-16Fix up a few missing base type evaluationsLinus Torvalds1-3/+3
2005-06-16Fix up type examination.Linus Torvalds3-13/+18
2005-06-04[LIB] allow changing the gcc version in the definesArnaldo Carvalho de Melo2-2/+5
2005-05-31[IDENT] Add some more attributesArnaldo Carvalho de Melo2-0/+12
2005-05-19Don't warn about undeclared "main()" function.Linus Torvalds2-0/+3
2005-05-19[PATCH] Fix segfault on non-ANSI function-like declaration for realLuc Van Oostenryck1-1/+1
2005-05-19[PATCH] Fix SIGSEGV on unterminated preprocessor conditionalLuc Van Oostenryck1-0/+2
2005-05-19Fix position reporting on unterminated preprocessor conditionalLinus Torvalds1-3/+3
2005-05-17[PATCH] avoid a crash on bad asm statementLuc Van Oostenryck1-2/+2
2005-05-17Fix SIGSEGV on non-ANSI function-line declarations without a direct name.Linus Torvalds1-1/+1
2005-04-27[PATCH] sparse fixDave Jones1-2/+0
2005-04-07[PATCH] static declearChristopher Li11-32/+35
2005-04-07Give function name in non-ANSI declaration warning.Linus Torvalds1-5/+5
2005-04-07[PATCH] sparse: add function name to warningBernhard Fischer1-2/+2
2005-04-07Make enum symbols be regular symbols with constant initializers.Linus Torvalds2-36/+30
2005-04-07Warn about implicit casts to/from "nocast" typesLinus Torvalds1-6/+18
2005-04-07Move the ptrlist macros out of the sparse "lib.[ch]" files.Linus Torvalds5-462/+487
2005-04-07[PATCH] sparse: Makefile trivialitiesAlexey Dobriyan1-2/+2
2005-04-07Handle bad enum expression types gracefully.Linus Torvalds1-1/+3
2005-04-07Add support for context checking functions.Linus Torvalds3-9/+31
2005-04-07Name static library "libsparse.a" to match shared library namingLinus Torvalds1-1/+1
2005-04-07[PATCH] : "make clean" doesn't delete libsparse.sormps@joel.ist.utl.pt1-1/+1
2005-04-07Don't warn about zero-sized "sizeof"Linus Torvalds1-1/+1
2005-04-07Warn about undeclared identifiers.Linus Torvalds1-0/+10
2005-04-07Support building sparse as a shared library.Linus Torvalds1-13/+25
2005-04-07[PATCH] using 0 as NULL in sparseChristopher Li1-3/+3
2005-04-07Warn about sizeof of zero size.Linus Torvalds1-1/+1
2005-04-07[PATCH] bogus initializer offsetsAlexander Viro1-4/+0
2005-04-07Be more careful about removing implicit casts.Linus Torvalds2-16/+36
2005-04-07Make sure to re-examine a struct/union/enum type afterLinus Torvalds1-0/+3
2005-04-07Make "check" (aka sparse) check arguments to some functions.Linus Torvalds2-0/+69
2005-04-07Fix typo (duplicate src2 should be src3) in simplify_rangeLinus Torvalds1-1/+1
2005-04-07Remove old stale pointer dereference type mess, thatLinus Torvalds1-14/+1
2005-04-07Export "is_ptr_type()" helper function to others.Linus Torvalds2-1/+2
2005-04-07Avoid SIGSEGV when linearizing bad expressions.Linus Torvalds1-1/+1
2005-04-07Don't drop modifier bits from a member dereference.Linus Torvalds1-0/+2
2005-04-07Use the new per-instruction position information for betterLinus Torvalds4-9/+9
2005-04-07Make each instruction have a position of its own.Linus Torvalds2-0/+7
2005-04-07Make range check code a bit more readable (and more easily extensible).Linus Torvalds1-5/+16
2005-04-07Add compile-time "range-check" infrastructure to sparseLinus Torvalds13-18/+120
2005-04-07Make sure we evaluate pointer comparisons as unsigned.Linus Torvalds1-1/+5
2005-04-07Shut up informational messages once we've hit the maximumLinus Torvalds1-8/+11
2005-04-07Make "check" (aka "sparse") check data-dropping casts.Linus Torvalds1-0/+61
2005-04-07Make simplification remove casts that change neither size nor sign.Linus Torvalds1-1/+12
2005-04-07Split OP_CAST into signed, unsigned and FP casts.Linus Torvalds4-2/+16
2005-04-07Simplify OP_CAST of OP_AND.Linus Torvalds1-7/+21
2005-04-07Don't optimize away casts too early.Linus Torvalds1-23/+24
2005-04-07Duh. When a function returns VOID, we should _not_ add thatLinus Torvalds1-1/+2
2005-04-07Fix code generation confusion between OP_ADDR and theLinus Torvalds1-12/+45
2005-04-07Make the example code generator do something half-way saneLinus Torvalds2-14/+33
2005-04-07Make constant instruction simplification take the sign of theLinus Torvalds1-20/+29
2005-04-07Split the binops where signedness matters into unsigned and signed.Linus Torvalds5-47/+83
2005-04-07Make linearizer able to handle assignment ops where theLinus Torvalds1-41/+50
2005-04-07[PATCH] make include path handling gcc compatibleSam Ravnborg4-52/+166
2005-04-07Evaluate asm outputs as assignments.Linus Torvalds1-0/+1
2005-04-07We didn't mark symbols with their address taken as beingLinus Torvalds1-0/+5
2005-04-07Make expression type enums start at one..Linus Torvalds1-1/+1
2005-04-07inlining: don't copy an initializer expression for a symbol thatLinus Torvalds1-1/+2
2005-04-07[PATCH] sparse: fails to locate stdarg.hSam Ravnborg1-0/+6
2005-04-07Linearize EXPR_POS initializers more carefully: they canLinus Torvalds1-4/+2
2005-04-07Add option "-Wptr-subtraction-blows" to warn about expensiveLinus Torvalds3-1/+10
2005-04-07Make "check_access()" take the size of the access properlyLinus Torvalds1-2/+2
2005-04-07Don't do the pointer offset update for a pointer additionLinus Torvalds1-11/+17
2005-04-07Don't try to recursively check for an associative insn.Linus Torvalds1-0/+2
2005-04-07Add warning for accessing outside of a symbolLinus Torvalds3-1/+23
2005-04-07Simplify OP_PTRCAST ops too for now.Linus Torvalds1-1/+1
2005-04-07Fix array size calculation when the last entry is an EXPR_INDEX.Linus Torvalds1-2/+2
2005-04-07Make output_insn() tell where it was called from, and avoidLinus Torvalds1-0/+7
2005-04-07Make "fill_reg" do somewhat the right thing when we take theLinus Torvalds1-1/+28
2005-04-07Oops. Missed a place where we still tested for "busy" thinking thatLinus Torvalds1-1/+1
2005-04-07Make the argument storage setup be a bit more accurate.Linus Torvalds1-10/+33
2005-04-07Toplevel symbols are externally addressable only if theyLinus Torvalds1-1/+3
2005-04-07Make "reg->busy" mean how many "operands" actually reference thisLinus Torvalds1-26/+53
2005-04-07Start moving to a more symbol "struct operand" notion, rather thanLinus Torvalds1-15/+144
2005-04-07Fix "address_taken()" function to work at least pitifullyLinus Torvalds1-2/+14
2005-04-07Get comparison sizes right.Linus Torvalds1-2/+2
2005-04-07Split OP_SETVAL into OP_SETVAL (fp expressions and labels) and OP_SYMADDRLinus Torvalds8-45/+54
2005-04-07Make sure to mark all registers that have already been allocatedLinus Torvalds1-0/+28
2005-04-07The stack offset is global, not per-bb.Linus Torvalds1-6/+5
2005-04-07Duh. We marked the wrong register REG_FIXED when we wrote outLinus Torvalds1-1/+1
2005-04-07Add some back-of-the-envelope support for asm inputs tiedLinus Torvalds1-5/+31
2005-04-07Do absolutely horrid job of generating code for asms.Linus Torvalds1-7/+137
2005-04-07[PATCH] Diff to make sparse not complain about __format_arg__santtu.hyrkko@gmail.com2-1/+3
2005-04-07Use the one-deep CC-cache for OP_SEL too.Linus Torvalds1-21/+30
2005-04-07Simplify conditional on cast-to-larger-size to conditional on original.Linus Torvalds1-0/+8
2005-04-07If we decide to mark a register as being its own storage,Linus Torvalds1-2/+3
2005-04-07Add a one-deep CC-cache for condition code setting and usage.Linus Torvalds1-123/+218
2005-04-07Verify that output/input asm constraints really look like outputs/inputs.Linus Torvalds1-0/+12
2005-04-07Save off the asm parameter name too.Linus Torvalds5-44/+114
2005-04-07Show asm inputs/outputs as bugus instructions as opposed to comments.Linus Torvalds1-2/+2
2005-04-07Start looking at asms in code generation.Linus Torvalds1-1/+40
2005-04-07Make asm linearization not drop the constraints.Linus Torvalds3-34/+83
2005-04-07Do some kind of signed cast too.Linus Torvalds1-5/+8
2005-04-07Do slightly better on casts.Linus Torvalds1-6/+13
2005-04-07Teach code generator about commutative operations.Linus Torvalds1-6/+63
2005-04-07Oops. Didn't remember about BINCMP ops when doing the commutativeLinus Torvalds1-0/+5
2005-04-07Teach simplification about associative operators.Linus Torvalds1-3/+39
2005-04-07Make commutative operations use a canonical order.Linus Torvalds1-1/+40
2005-04-07Mark the backing store storage dead when marking a pseudo dead.Linus Torvalds2-19/+26
2005-04-07Make "find_pseudo_storage()" return the storage hash entryLinus Torvalds1-6/+10
2005-04-07Split up the code that finds the underlying storage for aLinus Torvalds1-44/+71
2005-04-07Add storage usage verification phase.Linus Torvalds1-2/+52
2005-04-07Add support for various arch-specific storage allocationLinus Torvalds1-2/+116
2005-04-07Add the argument pseudos to the "enter" instructionLinus Torvalds2-1/+8
2005-04-07Expose lookup_storage/add_storage to code generator.Linus Torvalds2-2/+5
2005-04-07Sort switch target listLinus Torvalds1-0/+27
2005-04-07Kill off dead pseudos before doing target allocation for casts and loads.Linus Torvalds1-12/+16
2005-04-07Keep dead pseudos in the register "busy" count, add "dead" count.Linus Torvalds1-5/+57
2005-04-07Add comment on where incoming pseudos come from.Linus Torvalds1-0/+1
2005-04-07Generate pseudo-code for OP_SEL.Linus Torvalds1-0/+18
2005-04-07Make target register allocation prefer empty registers.Linus Torvalds1-0/+4
2005-04-07Generate cheesy "cast" instructions.Linus Torvalds1-0/+23
2005-04-07Add fake OP_CALL code generation.Linus Torvalds1-0/+39
2005-04-07Be a bit more forgiving about impossible output register situations.Linus Torvalds1-1/+4
2005-04-07Output unimplemented instructions as such, ratherLinus Torvalds1-1/+1
2005-04-07Clean up final register flushing, and allow flushing to a temporaryLinus Torvalds1-14/+80
2005-04-07Add comment about input storage selection.Linus Torvalds1-0/+7
2005-04-07When fulfilling the output register requirements, don'tLinus Torvalds1-4/+22
2005-04-07Don't kill the same pseudo twice.Linus Torvalds1-0/+2
2005-04-07Remove pseudos from liveness list when they are defined.Linus Torvalds1-0/+14
2005-04-07Track phi uses in a separate pass from the liveness analysis.Linus Torvalds1-2/+13
2005-04-07Clean up linearizer output that got uglified by the show_instruction()Linus Torvalds1-4/+3
2005-04-07Add tons more comments about register state changes to theLinus Torvalds1-21/+41
2005-04-07Make "remove_pseudo()" return whether it removed a pseudo fromLinus Torvalds1-2/+2
2005-04-07When removing/replacing pointer list entries, return the finalLinus Torvalds2-5/+8
2005-04-07PHI pseudos aren't supposed to show up on the livenessLinus Torvalds1-1/+1
2005-04-07Remove old pseudos from register list when we redefine oneLinus Torvalds1-0/+17
2005-04-07Make pretty helper functions for showing individual instructionsLinus Torvalds3-45/+95
2005-04-07Don't re-use registers for several different output storages.Linus Torvalds1-6/+27
2005-04-07Use the ptr-list tagging for marking pseudos dirty.Linus Torvalds1-11/+16
2005-04-07Support tagged add_ptr_listLinus Torvalds2-3/+12