- Apr 04, 2015
-
-
Rui Ueyama authored
llvm-svn: 234069
-
Rui Ueyama authored
Only MIPS defined the member function, but this feature is not actually MIPS-specific. Also, the dependency to the MIPS-only member function prevented us from merging <Arch>ELF{Object,DSO}Reader classes. This patch moves the feature from MipsLinkingContext to LinkingContext. llvm-svn: 234068 -
David Majnemer authored
Now all fields in the WinEH xdata have been filled out. llvm-svn: 234067
-
Simon Atanasyan authored
llvm-svn: 234066
-
Simon Atanasyan authored
It is enough to have single TargetLayout class. llvm-svn: 234065
-
David Blaikie authored
llvm-svn: 234064
-
David Blaikie authored
Not all of them (there's still a fallback for this specific function that omits the type parameter) but it's some I bothered to do now. llvm-svn: 234063
-
David Majnemer authored
This add support for catching an exception such that an exception object available to the catch handler will be initialized by the runtime. llvm-svn: 234062
-
David Majnemer authored
We don't need to represent UnwindHelp in IR. Instead, we can use the knowledge that we are emitting the parent function to decide if we should create the UnwindHelp stack object. llvm-svn: 234061
-
Rui Ueyama authored
The two classes are the same other than a few exceptions. This patch merges them using templates. llvm-svn: 234060
-
Andrew Kaylor authored
llvm-svn: 234059
-
David Blaikie authored
llvm-svn: 234058
-
David Blaikie authored
llvm-svn: 234057
-
Rui Ueyama authored
<Arch>ELFReader.h contains only a few typedefs. The typedefs are used only by one class in <Arch>TargetHandler.h. Thus, the headers don't worth to be independent files. Since MipsELFReader.h contains code other than the boilerplate, I didn't touch that file in this patch. llvm-svn: 234056
-
Daniel Jasper authored
llvm-svn: 234055
-
Simon Atanasyan authored
No functional changes. llvm-svn: 234052
-
David Majnemer authored
CHECK-LABEL had the wrong function name. llvm-svn: 234051
-
Rui Ueyama authored
<Arch>TargetHandler.h and <ArcH>RelocationHandler.h include each other. This patch breaks the circular dependencies. llvm-svn: 234050
-
Zachary Turner authored
We try to run lldb -P and jump through a bunch of other hoops to figure out where the Python module is so that we can add its location to sys.path. The error message printed when this doesn't work was left over from the time when Mac was the only platform, so it presented a Mac-specific diagnostic on all platforms related to the LLDB Framework. This patch prints a more useful diagnostic when not on Mac that gives a number of other diagnostic messages to check. llvm-svn: 234049
-
Ed Maste authored
The FreeBSD debug register access is a little usual, but in any case different from Linux. As it stands it's not possible to share an implementation of DR_OFFSET, so revert that part of r233837 and provide a separate FreeBSD and Linux implementation. We'll still want a better fix, but this should restore basic functionality (and the buildbot). llvm-svn: 234048
-
Rui Ueyama authored
All <Arch>ELFFileCreateFileTraits structs are the same except its file type. That means that we don't need to pass the type traits. Instead, we can only pass file types. By doing this, we can remove copy-pasted boilerplates. llvm-svn: 234047
-
David Majnemer authored
InstCombine didn't realize that it needs to use DataLayout to determine how wide pointers are. This lead to assertion failures. This fixes PR23113. llvm-svn: 234046
-
Andrew Kaylor authored
llvm-svn: 234045
-
Rui Ueyama authored
result_type is no longer part of the type traits, so keeping it here is confusing. llvm-svn: 234044
-
Andrew Kaylor authored
llvm-svn: 234043
-
David Blaikie authored
The plan here is to push the API changes out from the common components (like Constant::getGetElementPtr and IRBuilder::CreateGEP related functions) and just update callers to either pass the type if it's obvious, or pass null. Do this with LoadInst as well and anything else that comes up, then to start porting specific uses to not pass null anymore - this may require some refactoring in each case. llvm-svn: 234042
-
Andrew Kaylor authored
Differential Revision: http://reviews.llvm.org/D8596 llvm-svn: 234041
-
Simon Atanasyan authored
No functional changes. llvm-svn: 234040
-
Rui Ueyama authored
What we are doing in ELFTarget.h was dubious. In the file, we define partial classes of <Arch>LinkingContexts to declare only static member functions. We have different (complete) class definitions in other files. They would conflict if they exist in the same compilation unit (because the ones defined in ELFTarget.h has only static member functions). I don't think this was valid C++. http://reviews.llvm.org/D8797 llvm-svn: 234039
-
Duncan P. N. Exon Smith authored
As a follow-up to r234021, assert that a debug info intrinsic variable's `MDLocalVariable::getInlinedAt()` always matches the `MDLocation::getInlinedAt()` of its `!dbg` attachment. The goal here is to get rid of `MDLocalVariable::getInlinedAt()` entirely (PR22778), but I'll let these assertions bake for a while first. If you have an out-of-tree backend that just broke, you're probably attaching the wrong `DebugLoc` to a `DBG_VALUE` instruction. The one you want is the location that was attached to the corresponding `@llvm.dbg.declare` or `@llvm.dbg.value` call that you started with. llvm-svn: 234038
-
Justin Bogner authored
llvm-svn: 234037
-
Justin Bogner authored
This avoids crashing or corrupting data if multiple concurrent processes write to the same .gcda file. This is hard to test, since the previous behaviour was a data race that often worked out, and it ignores errors in flock to fall back to the old racy behaviour so that it won't degrade the behaviour on filesystems that don't support flock. llvm-svn: 234036
-
Reid Kleckner authored
llvm-svn: 234034
-
Manman Ren authored
C structs. This comes up when we have a function that takes a struct and is defined in a C++ file and used in a C file. Before this commit, we will generate byval for C++ and will expand the struct for C, thus causing difference at IR level. We will use bitcast of function type at the callsite, which causes the inliner to not inline the function. This commit changes how we handle small C like structs at IR level, but at backend, we should generate the same argument passing before and after the commit. Note that the condition for expanding is still over conservative. We should be able to expand type that is spelled with “class” and types that are not C-like. But this commit fixes the inconsistent argument passing between C/C++. Reviewed by John. rdar://20121030 llvm-svn: 234033
-
David Blaikie authored
llvm-svn: 234032
-
Matthias Braun authored
Most desktop environments let the users specify his preferred application per file type. On mac/linux we can use open/xdg-open for that and should try this first before starting a heuristic search for various programs. Differential Revision: http://reviews.llvm.org/D6534 llvm-svn: 234031
-
Zachary Turner authored
This patch fixes the swig generation scripts to use os.path.join instead, which produces correctly normalized paths for platforms that don't use the standard forward slash separator. llvm-svn: 234030
-
Sanjay Patel authored
llvm-svn: 234029
-
Sean Callanan authored
because the OS X builders aren't happy with them. <rdar://problem/20416388> llvm-svn: 234028
-
Sanjay Patel authored
llvm-svn: 234027
-