summaryrefslogtreecommitdiffstats
path: root/llvm/bindings
diff options
context:
space:
mode:
authorAndrew Wilkins <axwalk@gmail.com>2015-07-15 13:03:08 +0000
committerAndrew Wilkins <axwalk@gmail.com>2015-07-15 13:03:08 +0000
commit02ee3efb0cdf689bea9fe63354dc236545eabd16 (patch)
treeded1cb67cb6abee9aeef20853a7fdf85a8d3a545 /llvm/bindings
parentc11fd3e7751fe4e8ade1c902d71729ccf6d55678 (diff)
downloadbcm5719-llvm-02ee3efb0cdf689bea9fe63354dc236545eabd16.tar.gz
bcm5719-llvm-02ee3efb0cdf689bea9fe63354dc236545eabd16.zip
Expose setPersonalityFn to Go
Summary: Add Value.SetPersonality to the Go bindings. The Go bindings' Builder.CreateLandingPad has been updated, removing the obsolete personality argument. Background The personality attribute was removed from LandingPadInst in r239940, and llvm::Function::setPersonalityFn introduced. There was no corresponding change to either the C API or Go bindings. The Go bindings were broken until r239940, but that change was just to ignore the personality argument. This broke llgo. Reviewers: majnemer, pcc Subscribers: deadalnix, llvm-commits, axw Differential Revision: http://reviews.llvm.org/D11116 llvm-svn: 242289
Diffstat (limited to 'llvm/bindings')
-rw-r--r--llvm/bindings/go/llvm/ir.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/bindings/go/llvm/ir.go b/llvm/bindings/go/llvm/ir.go
index 80f7798ea06..dcc34d8b3b8 100644
--- a/llvm/bindings/go/llvm/ir.go
+++ b/llvm/bindings/go/llvm/ir.go
@@ -1054,6 +1054,9 @@ func (v Value) AddTargetDependentFunctionAttr(attr, value string) {
defer C.free(unsafe.Pointer(cvalue))
C.LLVMAddTargetDependentFunctionAttr(v.C, cattr, cvalue)
}
+func (v Value) SetPersonality(p Value) {
+ C.LLVMSetPersonalityFn(v.C, p.C)
+}
// Operations on parameters
func (v Value) ParamsCount() int { return int(C.LLVMCountParams(v.C)) }
@@ -1206,7 +1209,7 @@ func (b Builder) Dispose() { C.LLVMDisposeBuilder(b.C) }
func (b Builder) SetCurrentDebugLocation(line, col uint, scope, inlinedAt Metadata) {
C.LLVMSetCurrentDebugLocation2(b.C, C.unsigned(line), C.unsigned(col), scope.C, inlinedAt.C)
}
-func (b Builder) SetInstDebugLocation(v Value) { C.LLVMSetInstDebugLocation(b.C, v.C) }
+func (b Builder) SetInstDebugLocation(v Value) { C.LLVMSetInstDebugLocation(b.C, v.C) }
func (b Builder) InsertDeclare(module Module, storage Value, md Value) Value {
f := module.NamedFunction("llvm.dbg.declare")
if f.IsNil() {
@@ -1725,7 +1728,7 @@ func (b Builder) CreatePtrDiff(lhs, rhs Value, name string) (v Value) {
return
}
-func (b Builder) CreateLandingPad(t Type, personality Value, nclauses int, name string) (l Value) {
+func (b Builder) CreateLandingPad(t Type, nclauses int, name string) (l Value) {
cname := C.CString(name)
defer C.free(unsafe.Pointer(cname))
l.C = C.LLVMBuildLandingPad(b.C, t.C, C.unsigned(nclauses), cname)
OpenPOWER on IntegriCloud