| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 212039
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This worked initially but was broken by r210887.
Before:
function outer1(a, b) {
function inner1(a, b) { return a; } inner1(a, b);
} function outer2(a, b) { function inner2(a, b) { return a; } inner2(a, b); }
After:
function outer1(a, b) {
function inner1(a, b) { return a; }
inner1(a, b);
}
function outer2(a, b) {
function inner2(a, b) { return a; }
inner2(a, b);
}
Thanks to Adam Strzelecki for working on this.
llvm-svn: 212038
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit reverts the LSDA-related change in r211745.
The r211745 adds a new argument to scan_eh_tab(), i.e. lsda.
However, IMO, calling _Unwind_GetLanguageSpecificData() directly in
scan_eh_tab() was more intuitive and reduces several function call
to _Unwind_GetLanguageSpecificData() in __cxx_personality_v0().
llvm-svn: 212037
|
| |
|
|
|
|
| |
Stack origins were created with unlimited length by mistake.
llvm-svn: 212036
|
| |
|
|
|
|
|
|
| |
When trying to map atom types to sections, we were iterating through an array
until we hit a sentinel value. There's no need for such dances when range-based
for loops are available.
llvm-svn: 212035
|
| |
|
|
|
|
| |
request from Samuel F Antao).
llvm-svn: 212034
|
| |
|
|
| |
llvm-svn: 212033
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This isn't really the right place to put them in final object files (that would
be __TEXT,__unwind_info), but the format is different between relocatable and
final objects, which means we really need a pass to handle the translation.
For now, re-emitting in __LD,__compact_unwind is harmless (dyld ignores it and
moves straight on to inspecting __TEXT,__eh_frame), and sidesteps an assertion
failure when processing files containing compact-unwind info.
llvm-svn: 212032
|
| |
|
|
|
|
|
|
|
| |
Segments must occupy a multiple of the page size in memory (4096 currently). We
check for this when emitting files, but the placement algorithm broke down for
the second non-__TEXT segment encountered: the offset wasn't aligned up to 4096
before starting its layout.
llvm-svn: 212031
|
| |
|
|
|
|
|
|
|
| |
Because of how we were calculating fileOffset and fileSize for segments, most
ended up at a single offset in a finalised MachO file. This meant the data
often didn't even get written in the final object, let alone where it would be
useful.
llvm-svn: 212030
|
| |
|
|
|
|
|
|
| |
This fixes LNT SingleSource/UnitTests/Threads with -mthumb.
Differential Revision: http://reviews.llvm.org/D4324
llvm-svn: 212029
|
| |
|
|
| |
llvm-svn: 212028
|
| |
|
|
|
|
|
| |
For .dylib files, we refrain from actually creating any atoms until they're
requested via the "exports" method.
llvm-svn: 212027
|
| |
|
|
| |
llvm-svn: 212026
|
| |
|
|
| |
llvm-svn: 212025
|
| |
|
|
| |
llvm-svn: 212024
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 212023
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 212022
|
| |
|
|
| |
llvm-svn: 212021
|
| |
|
|
| |
llvm-svn: 212020
|
| |
|
|
| |
llvm-svn: 212019
|
| |
|
|
| |
llvm-svn: 212018
|
| |
|
|
| |
llvm-svn: 212017
|
| |
|
|
| |
llvm-svn: 212016
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Both NativeProcessLinux (in llgs branch) and Linux Host.cpp had similar code to handle /proc
file reading. I factored that out into a new Linux-specific ProcFileReader class and added a method
that the llgs branch will use for line-by-line parsing.
This change also adds numerous Linux-specific files to Xcode that were missing from the Xcode
project files.
Related to https://github.com/tfiala/lldb/issues/27
llvm-svn: 212015
|
| |
|
|
| |
llvm-svn: 212014
|
| |
|
|
| |
llvm-svn: 212013
|
| |
|
|
|
|
| |
Fix a comment typo `DbgLocLImport` instead of `DLLImport`.
llvm-svn: 212012
|
| |
|
|
|
|
|
| |
This just changes the constant value to the symbolic name corresponding to it.
NFC.
llvm-svn: 212011
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D4067
llvm-svn: 212010
|
| |
|
|
|
|
|
| |
Move test from CodeGen to Sema to more accurately reflect what is being tested
as pointed out by Alp.
llvm-svn: 212009
|
| |
|
|
|
|
|
|
|
| |
These don't actually require any registered backend to run.
This commit tests the water with a handful of fixes for what is a more
widespread problem.
llvm-svn: 212008
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Add sign checks to deal with the fact that IR parser line/column pairs are
signed integers and sometimes invalid.
The crash path is potentially triggered by corrupt '.bc' files in practice,
though I don't have a binary input test case that can be checked-in right now.
(Unfortunately the backend itself crashes on various ill-formed '.bc' inputs so
this bandage isn't as helpful as it appears yet.)
llvm-svn: 212007
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
We'll want to share the implementation if anything else decides to check
for reserved names in future, so make this little snippet of code more
discoverable.
Also remove the __va_list_tag and __builtin_va_list special-case
checks. They're leftovers from before when the reserved name logic was
added.
No change in functionality.
llvm-svn: 212006
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Elevate ProcessInfo and ProcessLaunchInfo into their own headers.
llgs will be using ProcessLaunchInfo but doesn't need to pull in
the rest of Process.h.
This also moves a bunch of implementation details from the header
declarations into ProcessInfo.cpp and ProcessLaunchInfo.cpp.
Tested on Ubuntu 14.04 Cmake and MacOSX Xcode.
Related to https://github.com/tfiala/lldb/issues/26.
llvm-svn: 212005
|
| |
|
|
|
|
|
|
|
| |
Windows on ARM defines va_list as a typedef for char *. Although the semantics
of argument passing for variadic functions matches AAPCS VFP, the wrapped
struct __va_list type is unused. This makes the intrinsic definition for
va_list match that of Visual Studio.
llvm-svn: 212004
|
| |
|
|
| |
llvm-svn: 212003
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The first version failed the SubstNonTypeTempateParmExpr-related test
on some buildbots. This one uses the new substNonTypeTempateParmExpr matcher to
filter out implicit C-style casts.
This patch depends on D4327.
Reviewers: djasper
Reviewed By: djasper
Subscribers: aemerson, cfe-commits
Differential Revision: http://reviews.llvm.org/D4328
llvm-svn: 212002
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: klimek, djasper
Reviewed By: djasper
Subscribers: klimek, aemerson, cfe-commits
Differential Revision: http://reviews.llvm.org/D4327
llvm-svn: 212001
|
| |
|
|
|
|
|
|
|
|
| |
This exception format is not specific to Windows x64. A similar approach is
taken on nearly all architectures. Generalise the name to reflect reality.
This will eventually be used for Windows on ARM data emission as well.
Switch the enum and namespace into an enum class.
llvm-svn: 212000
|
| |
|
|
|
|
| |
and Clang drivers but internally LLVM/Clang use the name "n64".
llvm-svn: 211999
|
| |
|
|
|
|
|
|
|
|
|
| |
Generic_GCC toolchain". It broke users of Generic_GCC, cygwin and mingw32.
It reverts commits as follows:
r211866: "Driver: use GNU::Link for the Generic_GCC toolchain"
r211895: "Replace GetProgramPath("ld") with GetLinkerPath()."
r211995: "Driver: add a cygwin linker tool"
llvm-svn: 211998
|
| |
|
|
| |
llvm-svn: 211997
|
| |
|
|
|
|
| |
for now.
llvm-svn: 211996
|
| |
|
|
|
|
|
|
|
| |
This adds a linker tool for the Windows cygwin environment. This linker
invocation is significantly different from the generic ld invocation. It
requires additional parameters as well as does not accept some normal
parameters. This should fix self-hosting on Cygwin.
llvm-svn: 211995
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename the routines to reflect the reality that they are more related to call
frame information than to Win64 EH. Although EH is implemented in an intertwined
manner by augmenting with an exception handler and an associated parameter, the
majority of these routines emit information required to unwind the frames. This
also helps identify that these routines are generic for most windows platforms
(they apply equally to nearly all architectures except x86) although the
encoding of the information is architecture dependent.
Unwinding data is emitted via EmitWinCFI* and exception handling information via
EmitWinEH*.
llvm-svn: 211994
|
| |
|
|
|
|
| |
simplify some code.
llvm-svn: 211993
|
| |
|
|
|
|
|
|
| |
Some time ago, I noticed that try would get resolved incorrectly for Windows
Itanium targets. Add an explicit test to exsure that exceptions are handled
correctly for Windows Itanium environments.
llvm-svn: 211992
|
| |
|
|
|
|
|
| |
This corrects the handling for i686-windows-itanium. This environment is nearly
identical to Windows MSVC, except it uses the itanium ABI for C++.
llvm-svn: 211991
|
| |
|
|
|
|
| |
Remove unnecessary separation of anonymous namespace. NFC.
llvm-svn: 211990
|