add neg nuw nsw
This commit is contained in:
parent
cfe5e9ea92
commit
1ed3c77310
2 changed files with 9 additions and 2 deletions
|
|
@ -2186,8 +2186,8 @@ class Builder(llvm.Wrapper):
|
||||||
def xor(self, lhs, rhs, name=""):
|
def xor(self, lhs, rhs, name=""):
|
||||||
return _make_value(self._ptr.CreateXor(lhs._ptr, rhs._ptr, name))
|
return _make_value(self._ptr.CreateXor(lhs._ptr, rhs._ptr, name))
|
||||||
|
|
||||||
def neg(self, val, name=""):
|
def neg(self, val, name="", nuw=False, nsw=False):
|
||||||
return _make_value(self._ptr.CreateNeg(val._ptr, name))
|
return _make_value(self._ptr.CreateNeg(val._ptr, name, nuw, nsw))
|
||||||
|
|
||||||
def not_(self, val, name=""):
|
def not_(self, val, name=""):
|
||||||
return _make_value(self._ptr.CreateNot(val._ptr, name))
|
return _make_value(self._ptr.CreateNot(val._ptr, name))
|
||||||
|
|
|
||||||
|
|
@ -1509,6 +1509,13 @@ class TestNUWNSW(TestCase):
|
||||||
def test_shl_nuw_nsw(self):
|
def test_shl_nuw_nsw(self):
|
||||||
self._test_template(Builder.shl, 'shl')
|
self._test_template(Builder.shl, 'shl')
|
||||||
|
|
||||||
|
def test_neg_nuw_nsw(self):
|
||||||
|
mod, func, bldr = self.make_module()
|
||||||
|
a, b = func.args
|
||||||
|
self.has_nsw(bldr.neg(a, nsw=True), 'sub')
|
||||||
|
self.has_nuw(bldr.neg(a, nuw=True), 'sub')
|
||||||
|
|
||||||
|
|
||||||
tests.append(TestNUWNSW)
|
tests.append(TestNUWNSW)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue