summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Set visibility for available_externally globals. This is important for two ↵Rafael Espindola2011-02-012-3/+2
| | | | | | | | | | reasons: * llvm-link would complains about mismatched visibility * If we produce a relocation with an available_externally, it is good to know that it is hidden. llvm-svn: 124633
* Perform the bad-address-space conversions check as part of John McCall2011-02-016-35/+54
| | | | | | CheckPointerTypesForAssignment. llvm-svn: 124632
* Made the EmulateInstruction class into a plug-in interface and moved theGreg Clayton2011-02-016-23/+57
| | | | | | source files around into the places they need to go. llvm-svn: 124631
* Improve the diagnostic for -Wcustom-atomic-properties. Suggestion by Fariborz!Argyrios Kyrtzidis2011-01-313-5/+15
| | | | llvm-svn: 124620
* Added a virtual C++ test case that catches some interesting casesGreg Clayton2011-01-311-0/+111
| | | | | | that you run into with inheritance. llvm-svn: 124619
* Make Check*PointerTypesForAssignment private and tell them that they'reJohn McCall2011-01-312-85/+63
| | | | | | working on canonical types already. llvm-svn: 124618
* Add emulate_pop (loads multiple registers from the stack) entries to both theJohnny Chen2011-01-312-4/+139
| | | | | | | | g_arm_opcodes and g_thumb_opcodes tables. Plus a minor comment fix for EmulateInstruction.h. llvm-svn: 124617
* Harden Lexer::GetBeginningOfToken() against bogus source locations andDouglas Gregor2011-01-312-2/+17
| | | | | | the disappearance/alteration of files. llvm-svn: 124616
* Slightly reorganize CheckAssignmentConstraints and remove some redundantJohn McCall2011-01-311-65/+87
| | | | | | logic. llvm-svn: 124615
* Teach Diagnostic::setClient() to free the existing, ownedDouglas Gregor2011-01-313-4/+10
| | | | | | client. Fixes a libclang leak. llvm-svn: 124614
* libclang: Don't allow RemoveFileOnSignal to be called via libclang, badness canDaniel Dunbar2011-01-311-1/+4
| | | | | | ensue. llvm-svn: 124613
* Frontend: Add an explicit RemoveFileOnSignal flag argument, to control theDaniel Dunbar2011-01-312-5/+13
| | | | | | automatic behavior (which is undesirable in a multithreaded context). llvm-svn: 124612
* Keep track of incoming argument's location while emitting LiveIns.Devang Patel2011-01-3113-32/+144
| | | | llvm-svn: 124611
* While printing "interesting" breakpoint locations for debug info quality ↵Devang Patel2011-01-311-27/+12
| | | | | | test harness, focus only on entry block's terminator for now. llvm-svn: 124610
* Add -Wcustom-atomic-properties which warns if an atomic-by-default property ↵Argyrios Kyrtzidis2011-01-314-4/+47
| | | | | | | | | | | has custom getter or setter. The rationale is that it is highly likely that the user's getter/setter isn't atomically implemented. Off by default. Addresses rdar://8782645. -Wcustom-atomic-properties and -Wimplicit-atomic-properties are under the -Watomic-properties group. llvm-svn: 124609
* Enumerate .code16/32/64 instead of checking .code prefix. ThisRoman Divacky2011-01-311-1/+1
| | | | | | unbreaks some ARM tests. llvm-svn: 124608
* Tidy up. Devang Patel2011-01-311-35/+132
| | | | llvm-svn: 124605
* Focus on arguments for now.Devang Patel2011-01-311-2/+2
| | | | llvm-svn: 124604
* Error on all .code* directives instead of just .code16 as theyRoman Divacky2011-01-311-2/+2
| | | | | | all lead to a silent miscompilation of code. llvm-svn: 124603
* Document that set-xcode-analyzer should typically be run using sudo.Ted Kremenek2011-01-311-3/+11
| | | | llvm-svn: 124602
* Fix vector sign extend to put the source and destination types in theDavid Greene2011-01-311-3/+3
| | | | | | correct places. llvm-svn: 124601
* Test warning for pending breakpoints.Caroline Tice2011-01-311-0/+3
| | | | llvm-svn: 124600
* add a note, progress unblocked by PR8575 being fixed.Chris Lattner2011-01-311-0/+48
| | | | llvm-svn: 124599
* Add test for breakpoint id ranges.Caroline Tice2011-01-313-0/+120
| | | | llvm-svn: 124598
* Add emulate_add_sp_imm entry to the g_thumb_opcodes table, which represents ↵Johnny Chen2011-01-311-1/+70
| | | | | | | | an operation to adjust the stack pointer by adding an imm7-scaled value to the SP. llvm-svn: 124596
* Align comment.Johnny Chen2011-01-311-1/+1
| | | | llvm-svn: 124595
* Add test for help on aliased commands.Caroline Tice2011-01-311-0/+6
| | | | llvm-svn: 124594
* Implement reasonable conversion ranking for Objective-C pointerDouglas Gregor2011-01-313-29/+164
| | | | | | | | | | | | | | | | | | | | | | | | conversions (<rdar://problem/8592139>) for overload resolution. The conversion ranking mirrors C++'s conversion ranking fairly closely, except that we use a same pseudo-subtyping relationship employed by Objective-C pointer assignment rather than simple checking derived-to-base conversions. This change covers: - Conversions to pointers to a specific object type are better than conversions to 'id', 'Class', qualified 'id', or qualified 'Class' (note: GCC doesn't perform this ranking, but it matches C++'s rules for ranking conversions to void*). - Conversions to qualified 'id' or qualified 'Class' are better than conversions to 'id' or 'Class', respectively. - When two conversion sequences convert to the same type, rank the conversions based on the relationship between the types we're converting from. - When two conversion sequences convert from the same non-id, non-Class type, rank the conversions based on the relationship of the types we're converting to. (note: GCC allows this ranking even when converting from 'id', which is extremeley dangerous). llvm-svn: 124591
* Adds some platform checks to cmake/config-ix.cmake and fixes checkingOscar Fuentes2011-01-312-12/+36
| | | | | | | | for dlopen/dlerror. Patch by arrowdodger! llvm-svn: 124590
* Add a few more settings tests.Caroline Tice2011-01-311-0/+31
| | | | llvm-svn: 124589
* Add some comments to the emulate_* functions.Johnny Chen2011-01-311-1/+6
| | | | llvm-svn: 124588
* Fix bug where ReduceLoadWidth was creating illegal ZEXTLOAD instructions.Richard Osborne2011-01-312-2/+12
| | | | llvm-svn: 124587
* Minor comment fix.Johnny Chen2011-01-311-4/+4
| | | | llvm-svn: 124586
* Only warn for -Wnon-virtual-dtor for public destructors. Thanks to Benjamin ↵Argyrios Kyrtzidis2011-01-312-2/+14
| | | | | | Kramer for the hint! llvm-svn: 124585
* Implement the suggested resolution to core issue 547, extended to alsoDouglas Gregor2011-01-317-40/+154
| | | | | | | | | allow ref-qualifiers on function types used as template type arguments. GNU actually allows cv-qualifiers on function types in many places where it shouldn't, so we currently categorize this as a GNU extension. llvm-svn: 124584
* CMake: Fix a few definition to suppress warnings.NAKAMURA Takumi2011-01-311-3/+3
| | | | llvm-svn: 124583
* Warn if the class has virtual methods but non-virtual destructor. Addresses ↵Argyrios Kyrtzidis2011-01-314-2/+41
| | | | | | rdar://8756445. llvm-svn: 124582
* Don't warn that variables in C++ static member functions shadow fields. ↵Argyrios Kyrtzidis2011-01-312-0/+19
| | | | | | Fixes rdar://8900456. llvm-svn: 124581
* Fix the diagnostic when we are shadowing an external variable and there ↵Argyrios Kyrtzidis2011-01-312-14/+30
| | | | | | exists a locally scoped extern with the same name. llvm-svn: 124580
* Diagnose if extern local variable is followed by non-extern and vice-versa.Argyrios Kyrtzidis2011-01-313-10/+24
| | | | llvm-svn: 124579
* 'extern' variables in functions don't shadow externs in global scope. Fixes ↵Argyrios Kyrtzidis2011-01-312-0/+19
| | | | | | rdar://8883302. llvm-svn: 124578
* If there were errors, disable 'unused' warnings since they will mostly be noise.Argyrios Kyrtzidis2011-01-312-19/+31
| | | | | | Fixes rdar://8736362. llvm-svn: 124577
* Error for use of field from anonymous struct or union should say "invalid ↵Argyrios Kyrtzidis2011-01-312-1/+13
| | | | | | | | use of nonstatic data member" not "call to non-static member function without an object argument". llvm-svn: 124576
* Amazing that there are still issues with the fields of anonymous struct/unions..Argyrios Kyrtzidis2011-01-314-14/+65
| | | | | | Allow taking the address of such a field for a pointer-to-member constant. Fixes rdar://8818236. llvm-svn: 124575
* Fix test that didn't actually test what it wanted to test.Argyrios Kyrtzidis2011-01-311-4/+4
| | | | llvm-svn: 124574
* Allow Microsoft attributes in a constructor's parameter list.Francois Pichet2011-01-312-0/+12
| | | | | | This fixes a few compile errors when parsing <regex> from MSVC 2008 with clang. llvm-svn: 124573
* Save a mapping between original and cloned constpool entries.Anton Korobeynikov2011-01-302-0/+25
| | | | llvm-svn: 124570
* Clarify the LSDASection NULL checkAnton Korobeynikov2011-01-301-0/+2
| | | | llvm-svn: 124569
* Recognize and simplifyAnders Carlsson2011-01-302-1/+27
| | | | | | | (A+B) == A -> B == 0 A == (A+B) -> B == 0 llvm-svn: 124567
* When building with optimizations, emit vtables where the key is not in the Anders Carlsson2011-01-305-1/+130
| | | | | | | | | | | | | | | | | | | | | | | current translation unit as available_externally. This helps devirtualize the second example in PR3100, comment 18: struct S { S() {}; virtual void xyzzy(); }; inline void foo(S *s) { s->xyzzy(); } void bar() { S s; foo(&s); } This involved four major changes: 1. In DefineUsedVTables, always mark virtual member functions as referenced for non-template classes and class template specializations. 2. In CodeGenVTables::ShouldEmitVTableInThisTU return true if optimizations are enabled, even if the key function is not implemented in this translation unit. We don't ever do this for code compiled with -fapple-kext, because we don't ever want to devirtualize virtual member function calls in that case. 3. Give the correct linkage for vtables where the key function is not defined. 4. Update the linkage for RTTI structures when necessary. llvm-svn: 124565
OpenPOWER on IntegriCloud