X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=TODO;h=3800901437f076b3438dc40d54d1b52c2000fd90;hb=63bea6c02bc23bdd1f63f2847bc180bdaeecb461;hp=102ef872f8bb39ce673c03f15d64a788161de132;hpb=0494f3c823b5ae5f7e18d7ebf961f837d8be6a86;p=libfirm diff --git a/TODO b/TODO index 102ef872f..380090143 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,46 @@ + * 27.8.2004 Goetz + Classes need a flag comparable to visibility of entities. + This flag must express whether these classes are accessed from + outside, i.e., the fields must have a specific layout. + Further it should express whether the outside can allocate classes + of the type. Then we can determine whether the class can be turned + into a description class by, e.g., rta. + + * + + * 5.7.04 Goetz + in free_type: check the types that there is no pointer type that points + to the freed type. If so report error. + + + 28.6.04 MMB + Div/Mod optimization for constants produces a result that will be optimized + again and again :-( Add a flag or a clever encoding so thios does not happen + + + Goetz 10.6.04 + Error in removing dead code: + In an if condition is a loop. We optimized the if condition to Jmp/Bad, + the loop now is unreachable. It should be removed by gigo or the like. + It remains in the representation as all blocks in the loop have a + valid predecessor, i.e., walking from End we find a true loop. We need + a pass walking and marking starting at the Start node to remove this loop. + Currently scc causes an segmetation fault for this situation. + + + Goetz 10.6.04 + Error in irscc: If we have an unreachable loop, or a loop + resulting from an exiting endless recursion, irscc finds + no tail ==> issues an assertion. + + * Goetz 10.6.04 + Error in interprocedural view: Endless recursions are lost. + + * print routines for all enums! + + * Add flag whether mode is associative, float modes are not!! + + * 25.2.04 Goetz + Fix memory leak in irprog: free_ir_prog. + Fix memory leak in entity: free_entity_attrs + * 19.12.03 Goetz Add state management for loops (consistent, inconsistent, invalid).