aboutsummaryrefslogtreecommitdiffstats
path: root/linearize.h
AgeCommit message (Expand)AuthorFilesLines
2012-02-04sparse, llvm: Make function declaration accessible to backendLinus Torvalds1-0/+1
2011-08-27sparse, llvm: if-else code generationJeff Garzik1-0/+1
2011-08-25sparse, llvm: Implement OP_ADDPekka Enberg1-0/+1
2009-07-29linearize.h: sanitize headerKamil Dudka1-1/+1
2008-12-24Revert the context tracking codeJohannes Berg1-4/+3
2008-12-18Add type information to struct instruction.David Given1-0/+1
2008-04-24fix bug in context tracking codeJohannes Berg1-1/+3
2008-04-21sparse: simple conditional context trackingJohannes Berg1-2/+1
2008-04-21make sparse keep its promise about context trackingJohannes Berg1-1/+1
2007-04-20linearize: DECLARE_ALLOCATOR for asm_constraint and asm_rulesJosh Triplett1-0/+3
2007-03-02Add annotation for inline function call.Christopher Li1-0/+1
2007-01-27Add missing #include "allocate.h" in linearize.h for DECLARE_ALLOCATOR.Josh Triplett1-0/+1
2007-01-27Coding style fix: in a pointer type, * goes with the name, not the type.Josh Triplett1-1/+1
2007-01-16Add instruction to pseudo user tracking.Christopher Li1-3/+25
2007-01-16Change the symbol access list to a pseudo listChristopher Li1-1/+1
2006-09-14bb_terminated: Use boundary values rather than specific opcodesJosh Triplett1-1/+2
2006-08-30[PATCH] Parse and track multiple contexts by expressionJosh Triplett1-0/+1
2006-07-08Fix dropped type information in "add_pseudo()".Linus Torvalds1-1/+1
2005-11-21[PATCH] Add a function to translate the SSA form back to normal form.Luc Van Oostenryck1-0/+1
2005-11-21[PATCH] Add a new opcode: OP_COPY.Luc Van Oostenryck1-0/+3
2005-04-07Add support for context checking functions.Linus Torvalds1-0/+1
2005-04-07Make each instruction have a position of its own.Linus Torvalds1-0/+1
2005-04-07Add compile-time "range-check" infrastructure to sparseLinus Torvalds1-0/+1
2005-04-07Split OP_CAST into signed, unsigned and FP casts.Linus Torvalds1-0/+2
2005-04-07Split the binops where signedness matters into unsigned and signed.Linus Torvalds1-4/+4
2005-04-07Split OP_SETVAL into OP_SETVAL (fp expressions and labels) and OP_SYMADDRLinus Torvalds1-0/+1
2005-04-07Save off the asm parameter name too.Linus Torvalds1-0/+1
2005-04-07Make asm linearization not drop the constraints.Linus Torvalds1-2/+14
2005-04-07Add the argument pseudos to the "enter" instructionLinus Torvalds1-0/+3
2005-04-07Make "remove_pseudo()" return whether it removed a pseudo fromLinus Torvalds1-2/+2
2005-04-07Make pretty helper functions for showing individual instructionsLinus Torvalds1-1/+1
2005-04-07Move remove_pseudo() to linearize.hLinus Torvalds1-0/+4
2005-04-07Expose "show_instruction()" for debugging.Linus Torvalds1-0/+1
2005-04-07Expose "show_bb()" for debugging, and make it do more appropriateLinus Torvalds1-0/+1
2005-04-07Make OP_PHISOURCE track the OP_PHI instructions that it defines.Linus Torvalds1-0/+4
2005-04-07Linearize inline asm statementsLinus Torvalds1-0/+6
2005-04-07Make the "entrypoint" be a special OP_ENTRY instruction instead ofLinus Torvalds1-1/+5
2005-04-07Expose "show_pseudo()" to the world.Linus Torvalds1-0/+1
2005-04-07Add pseudo death-note tracking.Linus Torvalds1-0/+1
2005-04-07Remove OP_SETCC, make OP_SEL bigger instead.Linus Torvalds1-4/+3
2005-04-07Simplify trivial casts (and handle pointers specially).Linus Torvalds1-0/+1
2005-04-07Associate pseudos with the symbol name whose value they got.Linus Torvalds1-0/+1
2005-04-07Start tracking cross-basic-block pseudo usage.Linus Torvalds1-2/+1
2005-04-07Start using instruction sizes properly.Linus Torvalds1-3/+3
2005-04-07Add entrypoint pointer to each bb.Linus Torvalds1-0/+1
2005-04-07Make list-ptr remove/replace take a count.Linus Torvalds1-5/+5
2005-04-07Be a lot more careful when re-writing branches.Linus Torvalds1-0/+6
2005-04-07Kill long-dead pseudo-reuse code.Linus Torvalds1-2/+1
2005-04-07Add a final pseudo usage tracking phase, which keepsLinus Torvalds1-0/+2
2005-04-07Who says you can't do type-safe function-overloading in C?Linus Torvalds1-5/+5
2005-04-07Add some type-safety features to the list pointer operations.Linus Torvalds1-1/+1
2005-04-07Clean up the tests for "pseudo has use list", since add/removeLinus Torvalds1-1/+6
2005-04-07Do early CSE before even doing the symbol simplification.Linus Torvalds1-2/+2
2005-04-07Use cleaned-up ptr list removal for removing basic blocksLinus Torvalds1-0/+5
2005-04-07Simplify constant "conditional" branches and OP_SETCC/OP_SEL instructions.Linus Torvalds1-1/+1
2005-04-07Clean up rewriting a switch into a branch.Linus Torvalds1-1/+1
2005-04-07Make phi pseudos be a type of their own.Linus Torvalds1-0/+1
2005-04-07Fix up various pseudo usage list issues:Linus Torvalds1-2/+3
2005-04-07Oops. Forgot to add usage of a dominator list pseudo.Linus Torvalds1-0/+12
2005-04-07Remove "struct phi", replace with instruction that generates a pseudo.Linus Torvalds1-13/+3
2005-04-07Do if-conversion.Linus Torvalds1-0/+1
2005-04-07Make CSE convert instructions to OP_NOPLinus Torvalds1-0/+1
2005-04-07Move flow analysis out of "linearize.c" and into new "flow.c"Linus Torvalds1-0/+4
2005-04-07Simplify switches on compile-time constant values.Linus Torvalds1-0/+1
2005-04-07Do some initial basic block packing and remove BB_REACHABLE flag.Linus Torvalds1-9/+1
2005-04-07Remove OP_MOV and copy_pseudo.Linus Torvalds1-1/+0
2005-04-07Clean up pseudo and bb usage handling.Linus Torvalds1-2/+1
2005-04-07Do symbol dominance checks for all used symbols.Linus Torvalds1-0/+1
2005-04-07Add basic block usage list to bb.Linus Torvalds1-0/+2
2005-04-07Remove the horrid iterators.Linus Torvalds1-0/+1
2005-04-07Undo braindamage.Linus Torvalds1-1/+2
2005-04-07Duplicate type removal..Linus Torvalds1-2/+1
2005-04-07Do a first pass at making symbols into pseudos.Linus Torvalds1-0/+1
2005-04-07Do some very rough (stupid) symbol access optimizations.Linus Torvalds1-0/+1
2005-04-07Replace OP_LOAD/OP_STORE with OP_LNOP/OP_SNOP when making them irrelevant.Linus Torvalds1-0/+2
2005-04-07Remove deathnotesLinus Torvalds1-1/+0
2005-04-07Make the pseudo usage list be a list of pointers toLinus Torvalds1-3/+4
2005-04-07Add "argument pseudo" for incoming arguments to a function.Linus Torvalds1-0/+1
2005-04-07Show usage notes for symbols.Linus Torvalds1-2/+0
2005-04-07Each pseudo has its "def" pointer, they now also have "use" pointers.Linus Torvalds1-0/+1
2005-04-07Introduce "value pseudos" and implicit deathnotes.Linus Torvalds1-4/+14
2005-04-07Allow "pseudo-pseudos", which are a temporary symbol reference.Linus Torvalds1-0/+1
2005-04-07Add usage refcounting to pseudos to make deathnotes come out right.Linus Torvalds1-0/+1
2005-04-07Re-do memory access linearization.Linus Torvalds1-0/+1
2005-04-07Do silly phi-node "expansion" as the last phase of theLinus Torvalds1-0/+1
2005-04-07Add deathnotes for the pseudo's we use.Linus Torvalds1-0/+1
2005-04-07Start "linearizing" initializers.Linus Torvalds1-0/+1
2005-04-07Associate each pseudo with the instruction that defines it.Linus Torvalds1-0/+3
2005-04-07Add "struct position" to basic blocks, and give it someLinus Torvalds1-0/+1
2005-04-07Add an internal sparse "context" statement type.Linus Torvalds1-0/+7
2005-04-07Mark the "entry" point in a function, and update it whenLinus Torvalds1-0/+1
2005-04-07[PATCH] handling of non-lvalue compound objectsAlexander Viro1-0/+5
2005-04-07Create a valid linearization of EXPR_SELECT.Linus Torvalds1-0/+3
2005-04-07EXPR_SAFELOGICAL is unnecessary. It ends up being the same as EXPR_BINOP.Linus Torvalds1-4/+4
2005-04-07Make expression expansion calculate the "cost" of theLinus Torvalds1-0/+1
2005-04-07Teach linearizer about computed goto's.Linus Torvalds1-0/+1
2005-04-07[PATCH] comparison operations fixAlexander Viro1-1/+5
2005-04-07Generalize linearize_symbol()Jeff Garzik1-1/+2
2005-04-07[PATCH] Fix "return" target handlingChristopher Li1-1/+3
2005-04-07[PATCH] More linearizion funChristopher Li1-22/+22
2005-04-07[PATCH] more op-codesChristopher Li1-8/+17
2005-04-07[PATCH] condition branch simplificationChristopher Li1-13/+97
2005-04-07[PATCH] PATCH: remove dead while loopChristopher Li1-0/+3
2005-04-07Linearize post-ops and casts.Linus Torvalds1-1/+6
2005-04-07Linearize function calls. Kind-of.Linus Torvalds1-0/+3
2005-04-07Linearize logical ops.Linus Torvalds1-0/+1
2005-04-07Add new IL for expression linearization.Linus Torvalds1-1/+52
2005-04-07Clean up linearization, and make the basic blocks beLinus Torvalds1-0/+8
2005-04-07Clean up "linearize()" calling convention even more.Linus Torvalds1-0/+1
2005-04-07Add basic block "ownership", ie each basic block has aLinus Torvalds1-2/+3
2005-04-07Add "goto/label" support for linearization.Linus Torvalds1-1/+1
2005-04-07Add real flow control to the basic-block handling.Linus Torvalds1-0/+1
2005-04-07Oops. Fix name clash by renaming the new "copy_ptr_list" to beLinus Torvalds1-0/+2
2005-04-07This add a linearization phase. It's not even close to doneLinus Torvalds1-0/+27