summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Baby steps towards making thunks be emitted from the new vtable layout code.Anders Carlsson2010-03-232-9/+18
| | | | llvm-svn: 99254
* Some renames.Anders Carlsson2010-03-231-19/+18
| | | | llvm-svn: 99253
* Always emit associated thunks when emitting the function itself. Remove ↵Anders Carlsson2010-03-234-43/+15
| | | | | | getVtableAddressPoint, it's not used. llvm-svn: 99252
* Rename MaybeEmitVtable to EmitVTableRelatedData in preparation for making it ↵Anders Carlsson2010-03-233-3/+5
| | | | | | emit thunks as well. llvm-svn: 99251
* Rename CGVtableInfo to CodeGenVTables in preparation of adding another ↵Anders Carlsson2010-03-2313-87/+85
| | | | | | VTableInfo class. llvm-svn: 99250
* For forward-declared static inline functions, delay CFG-based warnings until weTed Kremenek2010-03-232-8/+23
| | | | | | encounter a definition. llvm-svn: 99243
* Tweak null dereference diagnostics to give clearer diagnostics whenTed Kremenek2010-03-231-17/+38
| | | | | | a null dereference results from a field access. llvm-svn: 99236
* Only perform CFG-based warnings on 'static inline' functions thatTed Kremenek2010-03-237-53/+129
| | | | | | | are called (transitively) by regular functions/blocks within a translation untion. llvm-svn: 99233
* Set the relevent attributes declared in class extensionFariborz Jahanian2010-03-221-0/+5
| | | | | | | and fix a missing diagnostics on assigning to a read-only property. Fixes radar 7766184. llvm-svn: 99230
* A fixed version of r99174 which also includes a test that we emit vtables whenRafael Espindola2010-03-222-2/+11
| | | | | | we see an specialization definition ever if we then see a extern template declaration. llvm-svn: 99226
* Disable the emission of frontend warnings (not errors) under --analyze.Ted Kremenek2010-03-221-0/+5
| | | | | | Fixes <rdar://problem/7405601>. llvm-svn: 99222
* Improve the diagnostics for the UndefinedAssignmentChecker when anTed Kremenek2010-03-221-11/+27
| | | | | | uninitialized value is used in the LHS of a compound assignment. llvm-svn: 99221
* Comment the reasons for the strange little dance we do with the main file ↵Douglas Gregor2010-03-221-0/+4
| | | | | | name for debug information llvm-svn: 99215
* (re)implement PR6542, accepting and discarding the __gcc_tdiag__Chris Lattner2010-03-221-0/+8
| | | | | | format attribute specifier. llvm-svn: 99213
* Diagnose miuse of property dot-syntax instead of crashing.Fariborz Jahanian2010-03-221-1/+4
| | | | | | (radar 7634653). llvm-svn: 99210
* revert r98661, gcc_tdiag is not an attribute (PR6542).Chris Lattner2010-03-221-1/+0
| | | | | | Will fix correctly now that I have a testcase llvm-svn: 99207
* More work on thunks; almost there now.Anders Carlsson2010-03-221-9/+34
| | | | llvm-svn: 99199
* Fixes access rues for ivars declared in classFariborz Jahanian2010-03-222-3/+1
| | | | | | implementations (radar 7547942). llvm-svn: 99198
* More clean up of ivars which are either in class extensions andFariborz Jahanian2010-03-221-27/+15
| | | | | | | | implementation or synthesized into an implementation. Also, fixes a code gen. bug when ivars are itroduced in interleaved implementations. (related to radar 7547942). llvm-svn: 99193
* Sort calls to add_clang_library()Kovarththanan Rajaratnam2010-03-223-11/+11
| | | | llvm-svn: 99191
* fix PR6658: inline isn't a keyword in C89 mode, use __inline__ instead.Chris Lattner2010-03-227-486/+486
| | | | llvm-svn: 99190
* revert r99174. It caused PR6677. Will try to debug why tonight.Rafael Espindola2010-03-222-6/+2
| | | | llvm-svn: 99188
* Add less than operators to ThisAdjustment, ReturnAdjustment and ThunkInfo. ↵Anders Carlsson2010-03-221-1/+29
| | | | | | Sort the thunks before dumping them. llvm-svn: 99184
* Improve dumping of thunks.Anders Carlsson2010-03-221-3/+16
| | | | llvm-svn: 99181
* Fix a thinko and a typo in the delayed-diagnostic code.Douglas Gregor2010-03-221-3/+4
| | | | llvm-svn: 99178
* We want to add all thunks, not just 'this' adjustment thunks.Anders Carlsson2010-03-221-2/+25
| | | | llvm-svn: 99177
* Introduce the notion of a single "delayed" diagnostic into theDouglas Gregor2010-03-222-3/+61
| | | | | | | | | | | | Diagnostic subsystem, which is used in the rare case where we find a serious problem (i.e., an inconsistency in the file system) while we're busy formatting another diagnostic. In this case, the delayed diagnostic will be emitted after we're done with the other diagnostic. This is only to be used for fatal conditions detected at very inconvenient times, where we can neither stop the current diagnostic in flight nor can we suppress the second error. llvm-svn: 99175
* When handling a TSK_ExplicitInstantiationDefinition after aRafael Espindola2010-03-222-2/+6
| | | | | | | | | TSK_ExplicitInstantiationDeclaration make sure we call MaybeMarkVirtualMembersReferenced with a method attached to the definition. Remove the hack that forced vtable emition with declarations. llvm-svn: 99174
* -Wshadow should only warn about parameter declarations when we'reJohn McCall2010-03-223-14/+33
| | | | | | | | | entering a function or block definition, not on every single declaration. Unfortunately we don't have previous-lookup results around when it's time to make this decision, so we have to redo the lookup. The alternative is to use delayed diagnostics. llvm-svn: 99172
* Add very limited support for GCC's '-B' flag. This allows us to support unusualChandler Carruth2010-03-221-0/+20
| | | | | | toolchain configurations and is a small step toward FreeBSD support. llvm-svn: 99159
* Fix PR6618.Rafael Espindola2010-03-212-7/+15
| | | | | | | If a struct has an invalid field, mark it as invalid. Also avoid producing errors about incomplete types that are invalid. llvm-svn: 99150
* Keep track of the size/modification time of each file source-locationDouglas Gregor2010-03-213-7/+20
| | | | | | | entry in a precompiled header, so that we can detect modified files even when we miss in the stat cache. llvm-svn: 99149
* AddThunk should take a const reference.Anders Carlsson2010-03-211-2/+2
| | | | llvm-svn: 99140
* Fix PR6648 by not creating a temporary with the type of aRafael Espindola2010-03-211-4/+0
| | | | | | | | | | | CXXExprWithTemporaries. Not emitting the expression as an aggregate might be the right thing to do, but is orthogonal. Emitting it as an scalar expression will still try to create a temporary for the incomplete type of the CXXExprWithTemporaries and fail. llvm-svn: 99134
* Delete the new visitor if an old one already exists.Ted Kremenek2010-03-211-1/+3
| | | | llvm-svn: 99114
* Don't bother running the analysis for CFG-based warnings if theTed Kremenek2010-03-201-0/+7
| | | | | | declaration is in a system header. llvm-svn: 99087
* Refactor CFG-based warnings in Sema to be run by a worked object called ↵Ted Kremenek2010-03-207-302/+425
| | | | | | | | | | | | | | | AnalysisBasedWarnings. This object controls when the warnings are executed, allowing the client code in Sema to selectively disable warnings as needed. Centralizing the logic for analysis-based warnings allows us to optimize when and how they are run. Along the way, remove the redundant logic for the 'check fall-through' warning for blocks; now the same logic is used for both blocks and functions. llvm-svn: 99085
* Fixed synthesizing properties declared in properties (GNU runtime).David Chisnall2010-03-201-1/+1
| | | | llvm-svn: 99077
* Reapply r99024 (but with the memory issue now fixed).Ted Kremenek2010-03-202-0/+51
| | | | llvm-svn: 99064
* Check if a BugReporterVisitor has already been added to a BugReporterContext.Ted Kremenek2010-03-202-2/+31
| | | | | | This avoids redundant diagnostics. llvm-svn: 99063
* Driver: Fix thinkos that prevented Clang from picking the right deploymentDaniel Dunbar2010-03-201-2/+2
| | | | | | target when both {MACOSX,IPHONEOS}_DEPLOYMENT_TARGET were set. llvm-svn: 99055
* Driver: Support CC_PRINT_OPTIONS, used for logging the compile commands (in ↵Daniel Dunbar2010-03-202-6/+32
| | | | | | -v style) to a file. llvm-svn: 99054
* Driver: Fix -### to quote shell special characters, following gcc.Daniel Dunbar2010-03-201-4/+15
| | | | llvm-svn: 99053
* Add sse4.2 header and builtin support.Eric Christopher2010-03-202-0/+147
| | | | llvm-svn: 99051
* IRgen: Wrap atomic intrinsics with memory barriers, to ensure we honor the ↵Daniel Dunbar2010-03-201-25/+51
| | | | | | | | semantics. - This should be conservatively correct, we eventually should have target hooks for platforms that are less strict. llvm-svn: 99050
* Evaluate: Fix a subtle bug in the pointer evaluator in which we would do anDaniel Dunbar2010-03-201-10/+17
| | | | | | | | expression computation in the wrong bit-width, and end up generating a totally bogus array reference (_g0+8589934546). - This showed up on Prolangs/cdecl. llvm-svn: 99042
* Driver: Fix a number of -fapple-kext issues:Daniel Dunbar2010-03-201-5/+13
| | | | | | | | | | | | | - Disable RTTI. - Disable use of __cxa_atexit. - Disable unwind tables. - Enable freestanding mode. Also, honor -fhosted correctly. <rdar://problem/7515383> C++ support: -fapple-kext not honored llvm-svn: 99041
* Revert r99024, "Augment path diagnostics to include displaying when a messageDaniel Dunbar2010-03-202-49/+4
| | | | | | expression", statistical evidence indicates it has some kind of memory error. llvm-svn: 99040
* C++: Add support for -fno-use-cxa-atexit.Daniel Dunbar2010-03-206-21/+112
| | | | | | | | - So much typing, so little gain... Also, rename the __cxx_global_initialization function just to match llvm-gcc. llvm-svn: 99039
* IRgen: Inline GenerateCXXGlobal[VarDecl]InitFunc into sole caller.Daniel Dunbar2010-03-202-38/+15
| | | | llvm-svn: 99038
OpenPOWER on IntegriCloud