- Aug 02, 2013
-
-
Nadav Rotem authored
llvm-svn: 187628
-
Fariborz Jahanian authored
for mehods with certain prefix selector matching their class names' suffix. llvm-svn: 187626
-
Jordan Rose authored
We process autorelease counts when we exit functions, but if there's an issue in a synthesized body the report will get dropped. Just skip the processing for now and let it get handled when the caller gets around to processing autoreleases. (This is still suboptimal: objects autoreleased in the caller context should never be warned about when exiting a callee context, synthesized or not.) Second half of <rdar://problem/14611722> llvm-svn: 187625
-
Jordan Rose authored
Much of our diagnostic machinery is set up to assume that the report end path location is valid. Moreover, the user may be quite confused when something goes wrong in our BodyFarm-synthesized function bodies, which may be simplified or modified from the real implementations. Rather than try to make this all work somehow, just drop the report so that we don't try to go on with an invalid source location. Note that we still handle reports whose /paths/ go through invalid locations, just not those that are reported in one. We do have to be careful not to lose warnings because of this. The impetus for this change was an autorelease being processed within the synthesized body, and there may be other possible issues that are worth reporting in some way. We'll take these as they come, however. <rdar://problem/14611722> llvm-svn: 187624
-
Carlo Kok authored
llvm-svn: 187623
-
Daniel Jasper authored
Before: some_quite_long_variable_name_ptr ? : argv[9] ? ptr : argv[8] ? : argv[7] ? ptr : argv[6]; After: some_quite_long_variable_name_ptr ?: argv[9] ? ptr : argv[8] ?: argv[7] ? ptr : argv[6]; Patch by Adam Strzelecki, thank you!! This fixed llvm.org/PR16758. llvm-svn: 187622
-
- Aug 01, 2013
-
-
Jason Molenda authored
around was fixed in llvm commit r186846. <rdar://problem/14489274> llvm-svn: 187620
-
Rafael Espindola authored
This unifies the unix and windows versions of FileManager::UniqueDirContainer and FileManager::UniqueFileContainer by using UniqueID. We cannot just replace "struct stat" with llvm::sys::fs::file_status, since we want to be able to construct fake ones, and file_status has different members on unix and windows. What the patch does is: * Record only the information that clang is actually using. * Use llvm::sys::fs::status instead of stat and fstat. * Use llvm::sys::fs::UniqueID * Delete the old windows versions of UniqueDirContainer and UniqueFileContainer since the "unix" one now works on windows too. llvm-svn: 187619
-
Bill Wendling authored
Function attributes are the future! So just query whether we want to realign the stack directly from the function instead of through a random target options structure. llvm-svn: 187618
-
Bill Wendling authored
llvm-svn: 187617
-
Rafael Espindola authored
The use of sd_dev and st_ino has reached libclang, so expose the two components in UniqueID so that we can use it in clang. llvm-svn: 187616
-
Daniel Malea authored
Fixed the Intel-syntax X86 disassembler to respect the (existing) option for hexadecimal immediates, to match AT&T syntax. This also brings a new option for C-vs-MASM-style hex. Patch by Richard Mitton Reviewed: http://llvm-reviews.chandlerc.com/D1243 llvm-svn: 187614
-
Reed Kotler authored
This is actually an LLVM bug in the way it generates signatures for these when soft float is enabled. For example, floor ends up having the signature of int64(int64). The signature part is not the same as where the actual parameter types are recorded, and those ARE of course int64(int64) when soft float is enabled. (Yes, Mips16 hard float uses soft float but with different runtime rounes but then has to interoperate with Mips32 using normal floating point). This logic will eventually be moved to the Mips16HardFloat pass so it's not worth sorting out these issues in LLVM since nobody but Mips16 cares about these signatures, as far as I know, and even I won't eventually either. llvm-svn: 187613
-
David Blaikie authored
Without an ODR, the -flimit-debug-info debug info size optimization of emitting declarations for fully defined types when only a declaration is needed by the TU, is incorrect. Emit the full definition whenever it's available in non-C++. llvm-svn: 187611
-
Carlo Kok authored
ARM/Hexagon testcases can't compile x86 only testcase. Reverting change to testcase & fixing check for all. llvm-svn: 187610
-
Manman Ren authored
Also remove checking of llvm.dbg.sp since it is not used in generating dwarf. Current state of Finder: DebugInfoFinder tries to list all debug info MDNodes used in a module. To list debug info MDNodes used by an instruction, DebugInfoFinder provides processDeclare, processValue and processLocation to handle DbgDeclareInst, DbgValueInst and DbgLoc attached to instructions. processModule will go through all DICompileUnits in llvm.dbg.cu and list debug info MDNodes used by the CUs. TODO: 1> Finder has a list of CUs, SPs, Types, Scopes and global variables. We need to add a list of variables that are used by DbgDeclareInst and DbgValueInst. 2> MDString fields should be null or isa<MDString> and MDNode fields should be null or isa<MDNode>. We currently use empty string or int 0 to represent null. 3> Go though Verify functions and make sure that they check field types. 4> Clean up existing testing cases to remove llvm.dbg.sp and make sure each testing case has a llvm.dbg.cu. llvm-svn: 187609
-
David Blaikie authored
We emit definitions with no members when a nested type is referenced/required (GCC does the same, to be fair) but failed to attach the template arguments in such a case. llvm-svn: 187608
-
David Blaikie authored
The absence of members was a poor/incorrect proxy for "is definition". llvm-svn: 187607
-
Carlo Kok authored
change the inlinefnlocalvar testcase so it uses a triple that's not coff (doesn't seem to matter for the testcase itself, what it tests isn't triple specific), as coff has a slightly different way of emitting what it checks for. llvm-svn: 187604
-
Daniel Malea authored
llvm-svn: 187603
-
Hans Wennborg authored
(I'm not sure how to test this because the Driver will still accept e.g. "-O4foo", but it goes in the catch-all -O option instead of -O4.) llvm-svn: 187602
-
Bob Wilson authored
This is another case where internalize hides a symbol that is needed by a loadable module. I am currently investigating a proper fix but this patch will get our buildbot to pass in the meantime. <rdar://problem/14578094> llvm-svn: 187601
-
Ashok Thirumurthi authored
mapping of source to assembly so that the same test script can be used with more compilers. Patch by Andy Kaylor! Also marks the LLDB test of template parameters as xfail on icc. llvm-svn: 187600
-
Michael Sartain authored
This fixes threadname logging (--thread-name) Add "-t" to TestLogging.py script to enable threadsafe and disable threadname logging llvm-svn: 187599
-
Sean Silva authored
One of these was spotted in review by Rafael. llvm-svn: 187598
-
Carlo Kok authored
Bugfix for making the DWARF debug strings and labels to code emitted as secrel32 instead of long opcodes (only for coff). This makes them debuggable with GDB. fixes Bug 16249 - LLVM generates broken debug info on Windows llvm-svn: 187597
-
Nadav Rotem authored
llvm-svn: 187596
-
Nadav Rotem authored
llvm-svn: 187595
-
David Blaikie authored
llvm-svn: 187594
-
Howard Hinnant authored
MSVC-specific, MSVCRT-specific, or Windows-specific. Because Clang can also define _MSC_VER, and MSVCRT is not necessarily the only C runtime, these macros should not be used interchangeably. This patch divides all Windows-related bits into the aforementioned categories. Two new macros are introduced: - _LIBCPP_MSVC: Defined when compiling with MSVC. Detected using _MSC_VER, excluding Clang. - _LIBCPP_MSVCRT: Defined when using the Microsoft CRT. This is the default when _WIN32 is defined. This leaves _WIN32 for code using the Windows API. This also corrects the spelling of _LIBCP_HAS_IS_BASE_OF to _LIBCPP_HAS_IS_BASE_OF. Nico, please prepare a patch for CREDITS.TXT, thanks. llvm-svn: 187593
-
Daniel Jasper authored
Patch by Mark Lodato. Thank you! llvm-svn: 187592
-
Simon Atanasyan authored
initial cmake invocation. Patch reviewed by Reid Kleckner. llvm-svn: 187591
-
Stefanus Du Toit authored
This adds a new parameter, --skip-category, that can be used to list categories that should be skipped. For example, to run all tests except for Objective-C ones, one can now write: ./dotest.py --skip-category objc [...] llvm-svn: 187590
-
Daniel Jasper authored
Before: template <bool B, bool C> class A { static_assert(B &&C, "Something is wrong"); }; After: template <bool B, bool C> class A { static_assert(B && C, "Something is wrong"); }; (Note the spacing around '&&'). Also change the identifier table to always understand all C++11 keywords (which seems like the right thing to do). llvm-svn: 187589
-
Joey Gouly authored
Thanks Artyom Skrobov! llvm-svn: 187588
-
Howard Hinnant authored
llvm-svn: 187587
-
David Majnemer authored
This essentially fixes PR16766. llvm-svn: 187586
-
Matt Kopec authored
Thanks Stefanus! llvm-svn: 187585
-
Robert Lytton authored
llvm-svn: 187584
-
Hans Wennborg authored
This way we can do the translation in the .td file rather than manually. llvm-svn: 187583
-