- Mar 20, 2014
-
-
Eric Christopher authored
Use the range machinery for DW_AT_ranges and DW_AT_high/lo_pc. This commit moves us from a single range per subprogram to extending ranges if we are: a) In the same section, and b) In the same enclosing CU. This means we have more fine grained ranges for compile units, and fewer ranges overall when we have multiple functions in the same CU adjacent to each other in the object file. Also remove all of the earlier hacks around this functionality for function sections etc. Also update all of the testcases to take into account the merging functionality. with a fix for location entries in the debug_loc section: Make sure that debug loc entries are relative to the low_pc of the compile unit. This means that when we only have a single range that the offset should be just relative to the low_pc of the unit, for multiple ranges for a CU this means that we'll be relative to 0 which we emit along with DW_AT_ranges. This mostly shows up with linked binaries, so add a testcase with multiple CUs so that our location is going to be offset of a CU with a non-zero low_pc. llvm-svn: 204377
-
Ted Kremenek authored
llvm-svn: 204376
-
Ted Kremenek authored
llvm-svn: 204375
-
Ted Kremenek authored
[analyzer] Fix a bad bug in reversePropagateInterstingSymbols() where only one subexpression of BinaryOperator would be explored. llvm-svn: 204374
-
Duncan P. N. Exon Smith authored
<rdar://problem/15943240> llvm-svn: 204373
-
Duncan P. N. Exon Smith authored
llvm-svn: 204372
-
Duncan P. N. Exon Smith authored
llvm-svn: 204371
-
Justin Bogner authored
llvm-svn: 204370
-
Greg Clayton authored
llvm-svn: 204369
-
Ben Langmuir authored
We were 'allowing' the following import @import Sub; where Sub is a subframework of Foo and we had a -F path inside Foo.framework/Frameworks and no module map file for Sub. This would later hit assertion failures in debug builds. Now we should correctly diagnose this as a module not found error. llvm-svn: 204368
-
Eli Bendersky authored
llvm-svn: 204364
-
Eli Bendersky authored
llvm-svn: 204363
-
Jordan Rose authored
Third time's the charm. Patch by Brennan Shacklett! llvm-svn: 204362
-
Rafael Espindola authored
is_symlink was always false since it was using stat instead of lstat. llvm-svn: 204361
-
Ed Maste authored
llvm-svn: 204360
-
Jim Ingham authored
llvm-svn: 204359
-
David Blaikie authored
llvm-svn: 204358
-
Matt Arsenault authored
llvm-svn: 204357
-
Jordan Rose authored
Because neither ' ' nor '-' is alphanumeric, \b won't match between them! Since in this case we know our output is coming from a -### invocation, we should always have spaces on both sides of the flag we're trying to match, "-cc1". llvm-svn: 204356
-
Simon Atanasyan authored
llvm-svn: 204355
-
Simon Atanasyan authored
llvm-svn: 204354
-
Simon Atanasyan authored
llvm-svn: 204353
-
Simon Atanasyan authored
llvm-svn: 204352
-
Renato Golin authored
This is mainly a movement of content around to give place to new content allowing different people to add bits to it in the right place. There is some new content, but mostly to fill the gaps left by text movement. I'm dropping the old syntax documentation as it has the problem of being quickly outdated by changes and largely unnecessary to people not involved in creating the language, but using it, which is the whole point of the documentation. llvm-svn: 204351
-
Aaron Ballman authored
Replacing the exclusive_lock_function, shared_lock_function and unlock_function attributes with the acquire_capability and release_capability attributes. The old spellings will continue to work, but the underlying semantic attributes have been replaced. Downgraded the capability diagnostics from error to warning to match the desired behavior, and updated the existing test cases. llvm-svn: 204350
-
Jordan Rose authored
Amends r204300 to not try to test fixing a wchar_t* to "%ls", which we don't do correctly anyway. In C mode, wchar_t is just a typedef for a normal primitive integer type, not a distinct type like it is in C++. To make this work correctly, we'll need to look for the wchar_t typedef, not just the builtin type. Should fix the buildbots. llvm-svn: 204349
-
Marshall Clow authored
llvm-svn: 204348
-
Evgeniy Stepanov authored
llvm-svn: 204347
-
Evgeniy Stepanov authored
This change turns -fsanitize-memory-track-origins into -fsanitize-memory-track-origins=[level] flag (keeping the old one for compatibility). Possible levels are 0 (off), 1 (default) and 2 (incredibly detailed). See docs (part of this patch) for more info. llvm-svn: 204346
-
Aaron Ballman authored
Silencing an MSVC warning about not all control paths returning a value. No functional change intended. llvm-svn: 204345
-
Mark Seaborn authored
None of the existing tests for LowerInvoke check LowerInvoke's output, and all but one use "-enable-correct-eh-support", which is obsolete, so those tests will be removed when that option is removed. To make sure LowerInvoke will still have test coverage, this adds a test for its default mode which converts invokes to calls. Differential Revision: http://llvm-reviews.chandlerc.com/D3124 llvm-svn: 204344
-
Hafiz Abid Qadeer authored
This gets rid of a lot warnings when compiling with mingw. llvm-svn: 204343
-
Alexander Potapenko authored
llvm-svn: 204342
-
Timur Iskhodzhanov authored
llvm-svn: 204341
-
Dmitry Vyukov authored
llvm-svn: 204340
-
Alexander Potapenko authored
Extend ParseFlag to accept the |description| parameter, add dummy values for all existing flags. As the flags are parsed their descriptions are stored in a global linked list. The tool can later call __sanitizer::PrintFlagDescriptions() to dump all the flag names and their descriptions. Add the 'help' flag and make ASan, TSan and MSan print the flags if 'help' is set to 1. llvm-svn: 204339
-
Benjamin Kramer authored
While there convert to range-based for loops. No functionality change. llvm-svn: 204338
-
Kai Nacke authored
The Octeon cpu from Cavium Networks is mips64r2 based and has an extended instruction set. In order to utilize this with LLVM, a new cpu feature "octeon" and a subtarget feature "cnmips" is added. A small set of new instructions (baddu, dmul, pop, dpop, seq, sne) is also added. LLVM generates dmul, pop and dpop instructions with option -mcpu=octeon or -mattr=+cnmips. llvm-svn: 204337
-
Hafiz Abid Qadeer authored
It is supposed to take fully promoted types. llvm-svn: 204336
-
Alexander Potapenko authored
After the -asan pass had been split into -asan (function-level) and -asan-module (module-level) some of the tests have silently stopped working, because they didn't instrument the globals anymore. We've decided to have every test using both passes, irrespective of the presence of globals in it. llvm-svn: 204335
-