Access to MetaData operands
This is not available in the C API, so add functions to extra.cpp: - `LLVMMetaDataGetOperand` wraps MDNode::getOperand - `LLVMMetaDataGetNumOperands` wraps MDNode::getNumOperands
This commit is contained in:
parent
6e6bd1ea71
commit
7f69beb258
5 changed files with 40 additions and 1 deletions
|
|
@ -394,10 +394,13 @@ class TestMetaData(unittest.TestCase):
|
|||
# test module metadata
|
||||
def test_metadata(self):
|
||||
m = Module.new('a')
|
||||
metadata = MetaData.get(m, []) # empty metadata node
|
||||
t = Type.int()
|
||||
metadata = MetaData.get(m, [Constant.int(t, 100)])
|
||||
MetaData.add_named_operand(m, 'foo', metadata)
|
||||
self.assertEqual(MetaData.get_named_operands(m, 'foo'), [metadata])
|
||||
self.assertEqual(MetaData.get_named_operands(m, 'bar'), [])
|
||||
self.assertEqual(len(metadata.operands), 1)
|
||||
self.assertEqual(metadata.operands[0].z_ext_value, 100)
|
||||
|
||||
tests.append(TestMetaData)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue