layout: page
title: GlobalVariable (llvm.core)

llvm.core.GlobalVariable

Global variables (llvm.core.GlobalVariable) are subclasses of llvm.core.GlobalValue and represent module-level variables. These can have optional initializers and can be marked as constants. Global variables can be created either by using the add_global_variable method of the Module class, or by using the static method GlobalVariable.new.

# create a global variable using
add_global_variable method gv1 =
module_obj.add_global_variable(Type.int(), "gv1")

# or equivalently, using a static constructor method
gv2 = GlobalVariable.new(module_obj, Type.int(), "gv2") {% endhighlight
%}

Existing global variables of a module can be accessed by name using
``module_obj.get_global_variable_named(name)`` or
``GlobalVariable.get``. All existing global variables can be enumerated
via iterating over the property ``module_obj.global_variables``.

{% highlight python %} # retrieve a reference to the global variable
gv1, # using the get_global_variable_named method gv1 =
module_obj.get_global_variable_named("gv1")

# or equivalently, using the static ``get`` method:
gv2 = GlobalVariable.get(module_obj, "gv2")

# list all global variables in a module
for gv in module_obj.global_variables: print gv.name, "of type",
gv.type

Automatically Generated Documentation

class llvm.core.GlobalVariable(builder, ptr)
delete()
static get(module, name)
global_constant
initializer
static new(module, ty, name, addrspace=0)
thread_local

Table Of Contents

Previous topic

llvm.core.GlobalValue

Next topic

llvm.core.Instruction