- Sep 03, 2008
-
-
Dan Gohman authored
when searching for redundant subregister dead/kill bits. Previously it was common to see instructions marked like this: "RET %EAX<imp-use,kill>, %AX<imp-use,kill>" With this change, addRegisterKilled continues scanning after finding the %EAX operand, so it proceeds to discover the redundant %AX kill and eliminates it, producing this: "RET %EAX<imp-use,kill>" This currently has no effect on the generated code. llvm-svn: 55698
-
Duncan Sands authored
doesNotAccessMemory, check doesNotAccessMemory first, since otherwise functions may be marked readonly rather than readnone. llvm-svn: 55697
-
Duncan Sands authored
callgraph, when one member of a SCC calls another then the analysis would drop to mod-ref because there is (usually) no function info for the callee yet; fix this. Teach the analysis about function attributes, in particular the readonly attribute (which requires being careful about globals). llvm-svn: 55696
-
Duncan Sands authored
llvm-svn: 55695
-
Nick Lewycky authored
equivalence. llvm-svn: 55694
-
Evan Cheng authored
llvm-svn: 55693
-
Evan Cheng authored
llvm-svn: 55692
-
Evan Cheng authored
Make UpdateValueMap, createResultReg, etc. protected instead of private so they can used by target hooks. llvm-svn: 55691
-
Nick Lewycky authored
llvm-svn: 55690
-
Nick Lewycky authored
be folded. Instead, fail to fold the entire vector. We could also return a vector with some elements folded and some not. If anyone thinks that's a better approach, please speak up! llvm-svn: 55689
-
Ted Kremenek authored
- Change definition of store::Region and store::Binding (once again) to make them real classes that just wrap pointers. This makes them more strictly typed, and allows specific implementations of Regions/Bindings to just subclass them. - minor renamings to RegionExtent and its subclasses - added a bunch of doxygen comments StoreManager: (static analyzer) - added 'iterBindings', an iteration method for iterating over the bindings of a store. It that takes a callback object (acting like a poor man's closure). - added 'getRVal' version for store::Binding. Will potentially phase the other versions of GetRVal in StoreManager out. - reimplemented 'getBindings' to be non-virtual and to use 'iterBindings' BasicStoreManager: (static analyzer) - implemented 'iterBindings' for BasicStoreManager llvm-svn: 55688
-
Ted Kremenek authored
Fix capitalization in #include of FastISel.h. This unbreaks the build on case-sensitive filesystems. llvm-svn: 55687
-
Daniel Dunbar authored
- Now also searches for correct setter method. - There are still some issues regarding validation of the setter method and access of read-only properties. llvm-svn: 55686
-
Evan Cheng authored
llvm-svn: 55685
-
Devang Patel authored
llvm-svn: 55682
-
Daniel Dunbar authored
uses which refer to methods not properties. - Not yet wired in Sema. llvm-svn: 55681
-
Devang Patel authored
llvm-svn: 55680
-
Evan Cheng authored
Let tblgen only generate fastisel routines, not the class definition. This makes it easier for targets to define its own fastisel class. llvm-svn: 55679
-
Devang Patel authored
llvm-svn: 55678
-
Devang Patel authored
llvm-svn: 55676
-
Devang Patel authored
llvm-svn: 55674
-
Devang Patel authored
llvm-svn: 55673
-
- Sep 02, 2008
-
-
Evan Cheng authored
llvm-svn: 55668
-
Devang Patel authored
llvm-svn: 55657
-
Devang Patel authored
llvm-svn: 55656
-
Ted Kremenek authored
When creating CXXRecordDecls and RecordDecls within ActOnTag, hook up the new [CXX]RecordDecl with the RecordDecl chain. llvm-svn: 55652
-
Dale Johannesen authored
xfail old test for ppc. llvm-svn: 55651
-
Ted Kremenek authored
- Remove method 'isForwardDecl'; this functionality is already provided by 'isDefinition()' - Move method definitions to be co-located with other RecordDecl methods. llvm-svn: 55649
-
Devang Patel authored
llvm-svn: 55648
-
Devang Patel authored
llvm-svn: 55647
-
Devang Patel authored
llvm-svn: 55646
-
Devang Patel authored
llvm-svn: 55645
-
Ted Kremenek authored
- Don't serialize out the NextDeclarator field. It is unused and deprecated. - Serialize out the NextDecl pointer. llvm-svn: 55644
-
Dale Johannesen authored
llvm-svn: 55643
-
Ted Kremenek authored
- Added method 'isForwardDeclaration', a predicate method that returns true if a RecordDecl represents a forward declaration. - Added method 'getDefinitionDecl', a query method that returns a pointer to the RecordDecl that provides the actual definition of a struct/union. llvm-svn: 55642
-
Dan Gohman authored
even in FastISel mode in the case where FastISel successfully selects all the instructions. llvm-svn: 55641
-
Ted Kremenek authored
- Change constructor and create methods to accept a CXXRecordDecl* (RecordDecl*) instead of a ScopedDecl* for PrevDecl. This causes the type checking to be more tight and doesn't break any code. RecordDecl: - Don't use the NextDeclarator field in ScopedDecl to represent the previous declaration. This is a conflated use of the NextDeclarator field, which will be removed anyway when DeclGroups are fully implemented. - Instead, represent (a soon to be implemented) chain of RecordDecls using a NextDecl field. The last RecordDecl in the chain is always the 'defining' RecordDecl that owns the FieldDecls. The other RecordDecls in the chain are forward declarations. llvm-svn: 55640
-
Steve Naroff authored
- Replace FIXME in Preprocessor::HandleIdentifier() with a check that avoids diagnosing extension tokens that originate from macro definitions. llvm-svn: 55639
-
Devang Patel authored
llvm-svn: 55638
-
Steve Naroff authored
llvm-svn: 55637
-