Class: LLVM::Instruction
Class Method Summary
collapse
-
.from_ptr(ptr) ⇒ Object
Create Instruction from pointer to value many places where this is called, the instruction may be a constant, so create those instead.
Instance Method Summary
collapse
Methods inherited from User
#operands
Methods inherited from Value
#add_attribute, #allocated_type, #allocated_type?, #constant?, #dump, from_ptr_kind, #gep_source_element_type, #gep_source_element_type?, #global_parent, #kind, #name, #name=, #null?, #poison?, #remove_attribute, to_ptr, #to_s, #type, type, #undef?
#==, #eql?, #hash, #to_ptr
Class Method Details
.from_ptr(ptr) ⇒ Object
Create Instruction from pointer to value many places where this is called, the instruction may be a constant, so create those instead
1193
1194
1195
1196
|
# File 'lib/llvm/core/value.rb', line 1193
def self.from_ptr(ptr)
kind = C.get_value_kind(ptr)
kind == :instruction ? super : LLVM::Value.from_ptr_kind(ptr)
end
|
Instance Method Details
#clear_exact! ⇒ Object
1249
1250
1251
1252
|
# File 'lib/llvm/core/value.rb', line 1249
def clear_exact!
C.set_exact(self, false)
self
end
|
#clear_nsw! ⇒ Object
1229
1230
1231
1232
|
# File 'lib/llvm/core/value.rb', line 1229
def clear_nsw!
C.set_nsw(self, false)
self
end
|
#clear_nuw! ⇒ Object
1239
1240
1241
1242
|
# File 'lib/llvm/core/value.rb', line 1239
def clear_nuw!
C.set_nuw(self, false)
self
end
|
#exact! ⇒ Object
1244
1245
1246
1247
|
# File 'lib/llvm/core/value.rb', line 1244
def exact!
C.set_exact(self, true)
self
end
|
#inspect ⇒ Object
1220
1221
1222
|
# File 'lib/llvm/core/value.rb', line 1220
def inspect
{ self.class.name => { opcode: opcode, ptr: @ptr } }.to_s
end
|
#next ⇒ Object
Returns the next instruction after this one.
#nsw! ⇒ Object
1224
1225
1226
1227
|
# File 'lib/llvm/core/value.rb', line 1224
def nsw!
C.set_nsw(self, true)
self
end
|
#nuw! ⇒ Object
1234
1235
1236
1237
|
# File 'lib/llvm/core/value.rb', line 1234
def nuw!
C.set_nuw(self, true)
self
end
|
#parent ⇒ Object
Returns the parent of the instruction (a BasicBlock).
#previous ⇒ Object
Returns the previous instruction before this one.