- Jul 24, 2013
-
-
Bill Schmidt authored
The 64-bit PowerPC ELF ABI requires a struct that contains a single vector member to be passed in a vector register as though the wrapping struct were not present. Instead we were passing this as a byval struct. The same logic was already present for floating-point arguments, so this patch just extends the logic to handle vector types. The new test case verifies that clang coerces the parameter and annotates it as inreg. Thanks, Bill llvm-svn: 186993
-
Matt Kopec authored
llvm-svn: 186992
-
Howard Hinnant authored
unordered_set, however it is not complete yet for unordered_multiset, unordered_map or unordered_multimap. There has been a lot of work done for these other three containers, however that work was done just to keep all of the tests passing. You can try this out with -D_LIBCPP_DEBUG2. You will have to link to a libc++.dylib that has been compiled with src/debug.cpp. So far, vector (but not vector<bool>), list, and unordered_set are treated. I hope to get the other three unordered containers up fairly quickly now that unordered_set is done. The flag _LIBCPP_DEBUG2 will eventually be changed to _LIBCPP_DEBUG, but not today. This is my second effort at getting debug mode going for libc++, and I'm not quite yet ready to throw all of the work under the first attempt away. The basic design is that all of the debug information is kept in a central database, instead of in the containers. This has been done as an attempt to have debug mode and non-debug mode be ABI compatible with each other. There are some circumstances where if you construct a container in an environment without debug mode and pass it into debug mode, the checking will get confused and let you know with a readable error message. Passing containers the other way: from debug mode out to a non-debugging mode container should be 100% safe (at least that is the goal). llvm-svn: 186991
-
- Jul 23, 2013
-
-
Stefanus Du Toit authored
If we are replacing a function with the nobuiltin attribute, it may be called with the builtin attribute on call sites. Remove any such attributes since it's illegal to have a builtin call to something other than a nobuiltin function. This fixes the current buildbot breakage (where LLDB crashes on "expression new foo(42)"). llvm-svn: 186990
-
Hans Wennborg authored
The help text was wrong, and we already provide help text on the option that actually changes anything, i.e. -fdiagnostics-show-note-include-stack. llvm-svn: 186989
-
Richard Trieu authored
llvm-svn: 186988
-
Eli Bendersky authored
llvm-svn: 186987
-
Eli Bendersky authored
Run in two different modes: with and without reopening the temporary file between creating it and mapping it with MemoryBuffer. llvm-svn: 186986
-
Manman Ren authored
Use getNodeField to access a field as a MDNode. No functionality change. llvm-svn: 186985
-
Rafael Espindola authored
The main observation is that we never need both the filesize and the map size. When mapping a slice of a file, it doesn't make sense to request a null terminator and that would be the only case where the filesize would be used. There are other cleanups that should be done in this area: * A client should not have to pass the size (even an explicit -1) to say if it wants a null terminator or not, so we should probably swap the argument order. * The default should be to not require a null terminator. Very few clients require this, but many end up asking for it just because it is the default. llvm-svn: 186984
-
Rafael Espindola authored
llvm-svn: 186983
-
Aaron Ballman authored
Removing a number of individual run lines and replacing them with single line test cases. This reduces the number of test runs, provides the same coverage, and allows us to test that the attribute names are included in the diagnostic. llvm-svn: 186982
-
Fariborz Jahanian authored
which are candidate for migrating to 'instancetype'. wip. llvm-svn: 186981
-
Aaron Ballman authored
Added the attribute name to the err_attribute_wrong_number_arguments diagnostic for clarity; updated almost all of the affected test cases. Thanks to Fariborz Jahanian for the suggestion! llvm-svn: 186980
-
Ed Maste authored
llvm-svn: 186979
-
Rafael Espindola authored
The gold plugin was passing the desired map size as the file size. This was working for two reasons: * Recent version of gold provide the get_view callback, so this code was not used. * In older versions, getOpenFile was called, but the file size is never used if we don't require null terminated buffers and map size defaults to the file size. Thanks to Eli Bendersky for noticing this. I will try to make this api a bit less error prone. llvm-svn: 186978
-
Ed Maste authored
This change removes the final instances of compile-time #ifdef magic from the elf core plugin. Also rename the classes to ELFLinux... as they're specific to Linux. llvm-svn: 186977
-
Ed Maste authored
This avoids the use of the ELFPrStatus class, which returns to being used only for Linux. llvm-svn: 186976
-
Ed Maste authored
Extracting thread data at parse time simplifies multi-platform support. This change adds FreeBSD thread names and auxv info. Thanks to Samuel Jacob for review, testing, and improvements. llvm-svn: 186975
-
Enea Zaffanella authored
llvm-svn: 186974
-
Ed Maste authored
ELF notes contain a 'name' field, which specifies a vendor who defines the format of the note. Examples are 'FreeBSD' or 'GNU', or it may be empty for generic notes. Add a case for FreeBSD-specific notes, leaving Linux and GNU notes, other vendor-specific notes, and generic notes to be handled by the existing code for now. Thanks to Samuel Jacob for reviewing and suggesting improvements. llvm-svn: 186973
-
Manman Ren authored
llvm-svn: 186972
-
Richard Trieu authored
function-like macro. Clang will attempt to correct the arguments by detecting braced initializer lists: 1) If possible, suggest parentheses around arguments containing braced lists which will give the proper number of arguments. 2) If a braced list is detected at the start of a macro argument, it cannot be corrected by parentheses. Instead, just point out the location of these braced lists. llvm-svn: 186971
-
Rafael Espindola authored
llvm-svn: 186970
-
Ahmed Bougacha authored
This reverts commit r185676. Originally done because of VS 2008. llvm-svn: 186969
-
Ahmed Bougacha authored
llvm-svn: 186968
-
Argyrios Kyrtzidis authored
Patch by Che-Liang Chiou! llvm-svn: 186967
-
Aaron Ballman authored
llvm-svn: 186966
-
Ahmed Bougacha authored
Remove trailing ')'. Sorry about all that, should be good now! llvm-svn: 186965
-
Stefanus Du Toit authored
-C usually specifies a script to prepopulate the CMake cache. In this case no script is specified, so CMake appears to just ignore it. So don't mention it in the first place - it's not desired anyways. Reviewed by: Daniel Malea llvm-svn: 186964
-
Ahmed Bougacha authored
llvm-svn: 186963
-
Hans Wennborg authored
It was fixed by r186603. llvm-svn: 186962
-
Ahmed Bougacha authored
llvm-svn: 186961
-
Rui Ueyama authored
llvm-svn: 186960
-
Ashok Thirumurthi authored
because a synthetic symbol hasn't been provided for stripped function symbols. llvm-svn: 186959
-
Stefanus Du Toit authored
Reviewed by: Daniel Malea llvm-svn: 186958
-
Rui Ueyama authored
llvm-svn: 186957
-
Marshall Clow authored
llvm-svn: 186956
-
Benjamin Kramer authored
llvm-svn: 186955
-
Howard Hinnant authored
Bill Fisher: This patch fixes a bug where std::regex in ECMAScript mode was ignoring capture groups inside lookahead assertions. For example, matching /(?=(a))(a)/ to "a" should yield two captures: \1 = "a", \2 = "a" llvm-svn: 186954
-