#include "opendylan/run-time.h"

/* Generated by Open Dylan 2014.1 for x86_64-linux */

/* Typedefs for referenced classes */

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value debug_name_;
  dylan_value class_implementation_class_;
  dylan_value class_subtype_bit_;
  dylan_value class_module_;
} _KLclassGVKd;

#define  define__KLmm_wrapperGVKi(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value mm_wrapper_implementation_class_; \
    dylan_value mm_wrapper_subtype_mask_; \
    DWORD mm_wrapper_fixed_part_; \
    DWORD mm_wrapper_variable_part_; \
    dylan_value mm_wrapper_number_patterns_; \
    DWORD mm_wrapper_pattern_element_[nrepeated+1]; \
  } _KLmm_wrapperGVKi_##nrepeated;
define__KLmm_wrapperGVKi(1);
define__KLmm_wrapperGVKi(0);

typedef struct {
  dylan_value wrapper;
} _KLobjectGVKd;

typedef struct {
  dylan_value wrapper;
} _KLunboundGVKe;

typedef struct {
  dylan_value wrapper;
} _KLbooleanGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value class_properties_;
  dylan_value iclass_class_;
  dylan_value class_mm_wrapper_;
  dylan_value repeated_slot_descriptor_;
  dylan_value instance_slot_descriptors_;
  dylan_value iclass_dispatch_key_;
  dylan_value class_constructor_;
  dylan_value direct_superclasses_;
  dylan_value class_rcpl_vector_;
  dylan_value class_rcpl_position_;
  dylan_value class_rcpl_other_positions_;
  dylan_value class_known_joint_;
  dylan_value iclass_dependent_generics_;
  dylan_value iclass_subclass_dependent_generics_;
  dylan_value direct_subclasses_;
  dylan_value direct_methods_;
  dylan_value direct_slot_descriptors_;
  dylan_value slot_descriptors_;
  dylan_value direct_inherited_slot_descriptors_;
  dylan_value direct_initialization_argument_descriptors_;
  dylan_value class_slot_descriptors_;
  dylan_value defaulted_initialization_arguments_slot_;
  dylan_value class_slot_storage_;
} _KLimplementation_classGVKe;

#define  define__KLsimple_object_vectorGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    dylan_value vector_element_[nrepeated+1]; \
  } _KLsimple_object_vectorGVKd_##nrepeated;
define__KLsimple_object_vectorGVKd(11);
define__KLsimple_object_vectorGVKd(22);
define__KLsimple_object_vectorGVKd(13);
define__KLsimple_object_vectorGVKd(8);
define__KLsimple_object_vectorGVKd(6);
define__KLsimple_object_vectorGVKd(4);
define__KLsimple_object_vectorGVKd(256);
define__KLsimple_object_vectorGVKd(2);
define__KLsimple_object_vectorGVKd(1);
define__KLsimple_object_vectorGVKd(0);

typedef struct {
  dylan_value wrapper;
  dylan_value head_;
  dylan_value tail_;
} _KLempty_listGVKd;

typedef struct {
  dylan_value wrapper;
} _KLllvm_valueGVllvm;

typedef struct {
  dylan_value wrapper;
  dylan_value symbol_name_;
} _KLsymbolGVKd;

typedef struct {
  dylan_value wrapper;
} _KLllvm_typeGVllvm;

typedef struct {
  dylan_value wrapper;
  DWORD Pmachine_word_data_;
} _KLmachine_wordGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value debug_name_;
  dylan_value class_implementation_class_;
  dylan_value class_subtype_bit_;
  dylan_value class_module_;
} _KLvalue_classGVKi;

typedef struct {
  dylan_value wrapper;
} _KLintegerGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value Pgf_cache_;
  dylan_value debug_name_;
  dylan_value generic_function_methods_;
  dylan_value discriminator_;
  dylan_value incremental_gf_module_;
  dylan_value incremental_gf_domain_info_;
  dylan_value incremental_gf_method_libraries_;
  dylan_value incremental_gf_properties_;
} _KLincremental_generic_functionGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value debug_name_;
  dylan_value class_implementation_class_;
  dylan_value class_subtype_bit_;
  dylan_value class_module_;
} _KLfunction_classGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value union_type1_;
  dylan_value union_type2_;
} _KLunionGVKe;

typedef struct {
  dylan_value wrapper;
} _KLstringGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value instanceQ_iep_;
  dylan_value singleton_object_;
} _KLsingletonGVKd;

#define  define__KLbyte_stringGVKd(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value size_; \
    char string_element_[nrepeated+1]; \
  } _KLbyte_stringGVKd_##nrepeated;
define__KLbyte_stringGVKd(16);
define__KLbyte_stringGVKd(9);
define__KLbyte_stringGVKd(7);
define__KLbyte_stringGVKd(32);
define__KLbyte_stringGVKd(14);
define__KLbyte_stringGVKd(28);
define__KLbyte_stringGVKd(17);
define__KLbyte_stringGVKd(31);
define__KLbyte_stringGVKd(26);
define__KLbyte_stringGVKd(25);
define__KLbyte_stringGVKd(15);
define__KLbyte_stringGVKd(18);
define__KLbyte_stringGVKd(24);
define__KLbyte_stringGVKd(19);
define__KLbyte_stringGVKd(10);
define__KLbyte_stringGVKd(5);
define__KLbyte_stringGVKd(23);

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value mep_;
  dylan_value iep_;
  dylan_value keyword_specifiers_;
} _KLkeyword_methodGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
  dylan_value signature_keys_;
  dylan_value signature_key_types_;
  dylan_value signature_values_;
} _KLkeyword_signatureAvaluesGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value slot_descriptor_properties_;
  dylan_value init_data_slot_;
  dylan_value slot_owner_;
  dylan_value init_keyword_;
  dylan_value slot_getter_;
  dylan_value slot_setter_;
  dylan_value slot_type_;
} _KLinstance_slot_descriptorGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value function_signature_;
  dylan_value Pgf_cache_;
  dylan_value debug_name_;
  dylan_value generic_function_methods_;
  dylan_value discriminator_;
} _KLsealed_generic_functionGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
} _KLobject_signatureGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value properties_;
  dylan_value engine_node_callback_;
  dylan_value engine_node_entry_point_;
} _KLabsent_engine_nodeGVKg;

typedef struct {
  dylan_value wrapper;
  dylan_value head_;
  dylan_value tail_;
} _KLpairGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value xep_;
  dylan_value method_slot_descriptor_;
} _KLgetter_methodGVKi;

typedef struct {
  dylan_value wrapper;
  dylan_value namespace_name_;
  dylan_value home_library_;
} _KLmoduleGVKe;

typedef struct {
  dylan_value wrapper;
} _KLmutable_explicit_key_collectionGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value element_type_;
  dylan_value table_vector_;
  dylan_value initial_entries_;
  dylan_value grow_size_function_;
  dylan_value weakQ_;
} _KLstring_tableGVKe;

#define  define__KLsimple_closure_methodGVKi(nrepeated) \
  typedef struct { \
    dylan_value wrapper; \
    dylan_value xep_; \
    dylan_value function_signature_; \
    dylan_value mep_; \
    dylan_value environment_size_; \
    dylan_value environment_element_[nrepeated+1]; \
  } _KLsimple_closure_methodGVKi_##nrepeated;
define__KLsimple_closure_methodGVKi(0);

typedef struct {
  dylan_value wrapper;
  dylan_value signature_properties_;
  dylan_value signature_required_;
} _KLsignatureGVKe;

typedef struct {
  dylan_value wrapper;
} _KLsequenceGVKd;

typedef struct {
  dylan_value wrapper;
  dylan_value stretchy_representation_;
} _KLstretchy_object_vectorGVKe;

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_attribute_list_return_attributes_;
  dylan_value llvm_attribute_list_function_attributes_;
  dylan_value llvm_attribute_list_parameter_attributes_;
} _KLllvm_attribute_listGVllvm;

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_value_type_;
} _KLllvm_constant_valueGVllvm;

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_value_type_;
  dylan_value llvm_global_name_;
  dylan_value llvm_global_linkage_kind_;
  dylan_value llvm_global_visibility_kind_;
  dylan_value llvm_global_unnamed_addressQ_;
  dylan_value llvm_global_alignment_;
  dylan_value llvm_global_section_;
} _KLllvm_global_valueGVllvm;

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_placeholder_type_forward_;
  dylan_value llvm_opaque_type_name_;
} _KLllvm_opaque_typeGVllvm;


/* Typedefs for defined classes */

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_value_type_;
  dylan_value llvm_global_name_;
  dylan_value llvm_global_linkage_kind_;
  dylan_value llvm_global_visibility_kind_;
  dylan_value llvm_global_unnamed_addressQ_;
  dylan_value llvm_global_alignment_;
  dylan_value llvm_global_section_;
  dylan_value llvm_function_calling_convention_;
  dylan_value llvm_function_garbage_collector_;
  dylan_value llvm_function_arguments_;
  dylan_value llvm_function_attribute_list_;
  dylan_value llvm_function_basic_blocks_;
  dylan_value llvm_function_value_table_;
} _KLllvm_functionGVllvm;

typedef struct {
  dylan_value wrapper;
  dylan_value llvm_value_type_;
  dylan_value llvm_argument_name_;
  dylan_value llvm_argument_attributes_;
  dylan_value llvm_argument_index_;
} _KLllvm_argumentGVllvm;


/* Referenced object declarations */

extern _KLclassGVKd KLclassGVKd;
extern _KLmm_wrapperGVKi_0 KLclassGVKdW;
extern _KLclassGVKd KLmm_wrapperGVKi;
extern _KLmm_wrapperGVKi_1 KLmm_wrapperGVKiW;
extern _KLclassGVKd KLobjectGVKd;
extern _KLmm_wrapperGVKi_0 KLobjectGVKdW;
extern _KLunboundGVKe KPunboundVKi;
extern _KLclassGVKd KLunboundGVKe;
extern _KLmm_wrapperGVKi_0 KLunboundGVKeW;
extern _KLbooleanGVKd KPtrueVKi;
extern _KLclassGVKd KLbooleanGVKd;
extern _KLmm_wrapperGVKi_0 KLbooleanGVKdW;
extern _KLbooleanGVKd KPfalseVKi;
extern _KLclassGVKd KLimplementation_classGVKe;
extern _KLmm_wrapperGVKi_0 KLimplementation_classGVKeW;
extern _KLsimple_object_vectorGVKd_0 KPempty_vectorVKi;
extern _KLclassGVKd KLsimple_object_vectorGVKd;
extern _KLmm_wrapperGVKi_0 KLsimple_object_vectorGVKdW;
extern _KLempty_listGVKd KPempty_listVKi;
extern _KLclassGVKd KLempty_listGVKd;
extern _KLmm_wrapperGVKi_0 KLempty_listGVKdW;
extern _KLclassGVKd KLllvm_valueGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_valueGVllvmW;
extern _KLsymbolGVKd KJtype_;
extern _KLclassGVKd KLsymbolGVKd;
extern _KLmm_wrapperGVKi_0 KLsymbolGVKdW;
dylan_value KerrorVKdMM1I (dylan_value, dylan_value);
extern _KLclassGVKd KLllvm_typeGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_typeGVllvmW;
extern _KLvalue_classGVKi KLmachine_wordGVKe;
extern _KLclassGVKd KLvalue_classGVKi;
extern _KLmm_wrapperGVKi_0 KLvalue_classGVKiW;
extern _KLmm_wrapperGVKi_1 KLmachine_wordGVKeW;
extern _KLclassGVKd KLintegerGVKd;
extern _KLmm_wrapperGVKi_0 KLintegerGVKdW;
extern _KLincremental_generic_functionGVKe KinitializeVKd;
extern _KLfunction_classGVKi KLincremental_generic_functionGVKe;
extern _KLclassGVKd KLfunction_classGVKi;
extern _KLmm_wrapperGVKi_0 KLfunction_classGVKiW;
extern _KLmm_wrapperGVKi_0 KLincremental_generic_functionGVKeW;
extern _KLclassGVKd KLunionGVKe;
extern _KLmm_wrapperGVKi_0 KLunionGVKeW;
dylan_value Kunion_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLstringGVKd;
extern _KLmm_wrapperGVKi_0 KLstringGVKdW;
extern _KLclassGVKd KLsingletonGVKd;
extern _KLmm_wrapperGVKi_0 KLsingletonGVKdW;
dylan_value Ksingleton_pointer_idQ_instanceQVKiI (dylan_value, dylan_value);
extern _KLclassGVKd KLbyte_stringGVKd;
extern _KLmm_wrapperGVKi_0 KLbyte_stringGVKdW;
extern _KLfunction_classGVKi KLkeyword_methodGVKe;
extern _KLmm_wrapperGVKi_0 KLkeyword_methodGVKeW;
extern _KLsymbolGVKd KJname_;
extern _KLclassGVKd KLkeyword_signatureAvaluesGVKi;
extern _KLmm_wrapperGVKi_0 KLkeyword_signatureAvaluesGVKiW;
extern _KLsimple_object_vectorGVKd_2 KDsignature_LclassG_typesVKi;
extern _KLsimple_object_vectorGVKd_256 KDsignature_LobjectG_typesVKi;
extern _KLclassGVKd KLinstance_slot_descriptorGVKe;
extern _KLmm_wrapperGVKi_0 KLinstance_slot_descriptorGVKeW;
extern _KLclassGVKd KLsealed_generic_functionGVKe;
extern _KLmm_wrapperGVKi_0 KLsealed_generic_functionGVKeW;
extern _KLobject_signatureGVKe KDsignature_LobjectG_object_rest_value_1VKi;
extern _KLclassGVKd KLobject_signatureGVKe;
extern _KLmm_wrapperGVKi_0 KLobject_signatureGVKeW;
extern _KLabsent_engine_nodeGVKg RSINGULAR_Labsent_engine_nodeG;
extern _KLclassGVKd KLabsent_engine_nodeGVKg;
extern _KLmm_wrapperGVKi_0 KLabsent_engine_nodeGVKgW;
extern _KLclassGVKd KLpairGVKd;
extern _KLmm_wrapperGVKi_0 KLpairGVKdW;
extern _KLclassGVKd KLgetter_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLgetter_methodGVKiW;
extern _KLsealed_generic_functionGVKe Kllvm_value_typeVllvm;
dylan_value Kclass_instanceQ_initialVKiI (dylan_value, dylan_value);
extern _KLmoduleGVKe Kllvm_moduleYdylan_userVllvm;
extern _KLclassGVKd KLmoduleGVKe;
extern _KLmm_wrapperGVKi_0 KLmoduleGVKeW;
extern _KLclassGVKd KLmutable_explicit_key_collectionGVKd;
extern _KLmm_wrapperGVKi_0 KLmutable_explicit_key_collectionGVKdW;
extern _KLincremental_generic_functionGVKe KmakeVKd;
extern _KLclassGVKd KLstring_tableGVKe;
extern _KLmm_wrapperGVKi_0 KLstring_tableGVKeW;
extern _KLfunction_classGVKi KLsimple_closure_methodGVKi;
extern _KLmm_wrapperGVKi_0 KLsimple_closure_methodGVKiW;
extern _KLclassGVKd KLsignatureGVKe;
extern _KLmm_wrapperGVKi_0 KLsignatureGVKeW;
extern _KLclassGVKd KLsequenceGVKd;
extern _KLmm_wrapperGVKi_0 KLsequenceGVKdW;
dylan_value KLstretchy_object_vectorGZ32ZconstructorVKiMM0I (dylan_value, dylan_value);
extern _KLclassGVKd KLstretchy_object_vectorGVKe;
extern _KLmm_wrapperGVKi_0 KLstretchy_object_vectorGVKeW;
extern _KLclassGVKd KLllvm_attribute_listGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_attribute_listGVllvmW;
extern _KLsymbolGVKd KJarguments_;
extern _KLclassGVKd KLllvm_constant_valueGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_constant_valueGVllvmW;
extern _KLclassGVKd KLllvm_global_valueGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_global_valueGVllvmW;
extern _KLunionGVKe KLllvm_linkage_kindGYllvm_internalsVllvm;
extern _KLunionGVKe KLllvm_visibility_kindGYllvm_internalsVllvm;
extern _KLclassGVKd KLllvm_opaque_typeGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_opaque_typeGVllvmW;
extern _KLsymbolGVKd KJdefault_;
extern _KLinstance_slot_descriptorGVKe Kllvm_value_typeVllvmHLllvm_constant_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_nameVllvmHLllvm_global_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_linkage_kindYllvm_internalsVllvmHLllvm_global_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_visibility_kindYllvm_internalsVllvmHLllvm_global_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_unnamed_addressQYllvm_internalsVllvmHLllvm_global_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_alignmentYllvm_internalsVllvmHLllvm_global_valueG;
extern _KLinstance_slot_descriptorGVKe Kllvm_global_sectionYllvm_internalsVllvmHLllvm_global_valueG;
extern dylan_value Dllvm_empty_attribute_listYllvm_internalsVllvm;

/* Defined object declarations */

extern _KLgetter_methodGVKi Kllvm_value_typeVllvmMM26;
extern _KLclassGVKd KLllvm_functionGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_functionGVllvmW;
extern _KLsealed_generic_functionGVKe Kllvm_function_garbage_collectorYllvm_internalsVllvm;
extern _KLsealed_generic_functionGVKe Kllvm_function_basic_blocksVllvm;
extern _KLsealed_generic_functionGVKe Kllvm_function_value_tableVllvm;
extern _KLclassGVKd KLllvm_argumentGVllvm;
extern _KLmm_wrapperGVKi_0 KLllvm_argumentGVllvmW;
static _KLimplementation_classGVKe K8;
static _KLsimple_object_vectorGVKd_4 K9;
extern _KLkeyword_methodGVKe KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0;
dylan_value KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLsimple_object_vectorGVKd_1 K12;
static _KLsimple_object_vectorGVKd_6 K13;
static _KLbyte_stringGVKd_23 K14;
static _KLsymbolGVKd KJindex_;
static _KLunionGVKe K16;
static _KLsingletonGVKd K17;
static _KLbyte_stringGVKd_5 K18;
static _KLkeyword_signatureAvaluesGVKi K19;
static _KLsimple_object_vectorGVKd_8 K20;
static _KLsymbolGVKd KJattributes_;
static _KLmachine_wordGVKe K22;
static _KLbyte_stringGVKd_10 K23;
static _KLsimple_object_vectorGVKd_4 K24;
static _KLsimple_object_vectorGVKd_1 K25;
extern _KLinstance_slot_descriptorGVKe Kllvm_value_typeVllvmHLllvm_argumentG;
extern _KLinstance_slot_descriptorGVKe Kllvm_argument_nameVllvmHLllvm_argumentG;
extern _KLinstance_slot_descriptorGVKe Kllvm_argument_attributesVllvmHLllvm_argumentG;
extern _KLinstance_slot_descriptorGVKe Kllvm_argument_indexVllvmHLllvm_argumentG;
extern _KLsealed_generic_functionGVKe Kllvm_argument_indexVllvm;
extern _KLgetter_methodGVKi Kllvm_argument_indexVllvmMM0;
static _KLpairGVKd K32;
static _KLbyte_stringGVKd_19 K33;
extern _KLsealed_generic_functionGVKe Kllvm_argument_attributesVllvm;
extern _KLgetter_methodGVKi Kllvm_argument_attributesVllvmMM0;
static _KLpairGVKd K36;
static _KLbyte_stringGVKd_24 K37;
extern _KLsealed_generic_functionGVKe Kllvm_argument_nameVllvm;
extern _KLgetter_methodGVKi Kllvm_argument_nameVllvmMM0;
static _KLpairGVKd K40;
static _KLbyte_stringGVKd_18 K41;
static _KLbyte_stringGVKd_15 K42;
extern _KLgetter_methodGVKi Kllvm_function_value_tableVllvmMM0;
static _KLpairGVKd K44;
static _KLbyte_stringGVKd_25 K45;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_value_tableVllvmHLllvm_functionG;
static _KLsimple_closure_methodGVKi_0 K49;
static dylan_value K49I ();
static _KLsignatureGVKe K50;
extern _KLgetter_methodGVKi Kllvm_function_basic_blocksVllvmMM0;
static _KLpairGVKd K52;
static _KLbyte_stringGVKd_26 K53;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_basic_blocksVllvmHLllvm_functionG;
static _KLsimple_closure_methodGVKi_0 K57;
static dylan_value K57I ();
extern _KLgetter_methodGVKi Kllvm_function_garbage_collectorYllvm_internalsVllvmMM0;
static _KLpairGVKd K59;
static _KLbyte_stringGVKd_31 K60;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG;
static _KLsymbolGVKd KJgarbage_collector_;
static _KLbyte_stringGVKd_17 K63;
static _KLimplementation_classGVKe K64;
static _KLsimple_object_vectorGVKd_13 K65;
extern _KLkeyword_methodGVKe KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0;
dylan_value KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0I (dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value, dylan_value);
static _KLsimple_object_vectorGVKd_1 K68;
static _KLsimple_object_vectorGVKd_6 K69;
static _KLsimple_object_vectorGVKd_6 K70;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_calling_conventionVllvmHLllvm_functionG;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_argumentsVllvmHLllvm_functionG;
extern _KLinstance_slot_descriptorGVKe Kllvm_function_attribute_listVllvmHLllvm_functionG;
static _KLsimple_closure_methodGVKi_0 K82;
static dylan_value K82I ();
static _KLsymbolGVKd KJattribute_list_;
extern _KLsealed_generic_functionGVKe Kllvm_function_attribute_listVllvm;
extern _KLgetter_methodGVKi Kllvm_function_attribute_listVllvmMM0;
static _KLpairGVKd K79;
static _KLbyte_stringGVKd_28 K80;
static _KLbyte_stringGVKd_14 K81;
extern _KLsealed_generic_functionGVKe Kllvm_function_argumentsVllvm;
extern _KLgetter_methodGVKi Kllvm_function_argumentsVllvmMM0;
static _KLpairGVKd K85;
static _KLbyte_stringGVKd_23 K86;
static _KLsymbolGVKd KJcalling_convention_;
extern _KLsealed_generic_functionGVKe Kllvm_function_calling_conventionVllvm;
extern _KLgetter_methodGVKi Kllvm_function_calling_conventionVllvmMM0;
static _KLpairGVKd K90;
static _KLbyte_stringGVKd_32 K91;
static _KLbyte_stringGVKd_18 K92;
static dylan_value K104I ();
static _KLsymbolGVKd KJlinkage_;
static dylan_value K102I ();
static _KLunionGVKe K96;
static _KLunionGVKe K97;
static dylan_value K101I ();
static dylan_value K100I ();
static _KLbyte_stringGVKd_7 K103;
static _KLkeyword_signatureAvaluesGVKi K105;
static _KLsimple_object_vectorGVKd_22 K106;
static _KLsymbolGVKd KJvisibility_;
static _KLsymbolGVKd KJunnamed_addressQ_;
static _KLsymbolGVKd KJalignment_;
static _KLsymbolGVKd KJsection_;
static _KLbyte_stringGVKd_7 K111;
static _KLbyte_stringGVKd_9 K112;
static _KLbyte_stringGVKd_16 K113;
static _KLbyte_stringGVKd_10 K114;
static _KLsimple_object_vectorGVKd_11 K115;
static _KLsimple_object_vectorGVKd_1 K116;
static _KLbyte_stringGVKd_15 K117;

/* Indirection variables */

static dylan_value IKJindex_ = &KJindex_;
static dylan_value IKJattributes_ = &KJattributes_;
static dylan_value IKJgarbage_collector_ = &KJgarbage_collector_;
static dylan_value IKJattribute_list_ = &KJattribute_list_;
static dylan_value IKJcalling_convention_ = &KJcalling_convention_;
static dylan_value IKJlinkage_ = &KJlinkage_;
static dylan_value IKJvisibility_ = &KJvisibility_;
static dylan_value IKJunnamed_addressQ_ = &KJunnamed_addressQ_;
static dylan_value IKJalignment_ = &KJalignment_;
static dylan_value IKJsection_ = &KJsection_;

/* Variables */

dylan_value llvm_argument_nameVllvm = &Kllvm_argument_nameVllvm;
dylan_value llvm_argument_attributesVllvm = &Kllvm_argument_attributesVllvm;
dylan_value llvm_argument_indexVllvm = &Kllvm_argument_indexVllvm;
dylan_value llvm_function_calling_conventionVllvm = &Kllvm_function_calling_conventionVllvm;
dylan_value llvm_function_garbage_collectorYllvm_internalsVllvm = &Kllvm_function_garbage_collectorYllvm_internalsVllvm;
dylan_value llvm_function_argumentsVllvm = &Kllvm_function_argumentsVllvm;
dylan_value llvm_function_attribute_listVllvm = &Kllvm_function_attribute_listVllvm;
dylan_value llvm_function_basic_blocksVllvm = &Kllvm_function_basic_blocksVllvm;
dylan_value llvm_function_value_tableVllvm = &Kllvm_function_value_tableVllvm;
dylan_value Dllvm_calling_convention_cVllvm = (dylan_value) 1;
dylan_value Dllvm_calling_convention_fastVllvm = (dylan_value) 33;
dylan_value Dllvm_calling_convention_coldVllvm = (dylan_value) 37;
dylan_value Dllvm_calling_convention_ghcVllvm = (dylan_value) 41;
dylan_value Dllvm_calling_convention_x86_stdcallVllvm = (dylan_value) 257;
dylan_value Dllvm_calling_convention_x86_fastcallVllvm = (dylan_value) 261;
dylan_value Dllvm_calling_convention_arm_apcsVllvm = (dylan_value) 265;
dylan_value Dllvm_calling_convention_arm_aapcsVllvm = (dylan_value) 269;
dylan_value Dllvm_calling_convention_arm_vfpVllvm = (dylan_value) 273;
dylan_value Dllvm_calling_convention_msp430_intrVllvm = (dylan_value) 277;
dylan_value Dllvm_calling_convention_x86_thiscallVllvm = (dylan_value) 281;
dylan_value Dllvm_calling_convention_ptx_kernelVllvm = (dylan_value) 285;
dylan_value Dllvm_calling_convention_ptx_deviceVllvm = (dylan_value) 289;
dylan_value Lllvm_functionGVllvm = &KLllvm_functionGVllvm;
dylan_value Lllvm_argumentGVllvm = &KLllvm_argumentGVllvm;

/* Objects */

_KLgetter_methodGVKi Kllvm_value_typeVllvmMM26 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_value_typeVllvmHLllvm_argumentG
};

_KLclassGVKd KLllvm_functionGVllvm = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K117,
  &K64,
  (dylan_value) 1,
  &Kllvm_moduleYdylan_userVllvm
};

_KLmm_wrapperGVKi_0 KLllvm_functionGVllvmW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K64,
  (dylan_value) 1,
  53,
  33554439,
  (dylan_value) 1
};

_KLsealed_generic_functionGVKe Kllvm_function_garbage_collectorYllvm_internalsVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K60,
  &K59,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kllvm_function_basic_blocksVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K53,
  &K52,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLsealed_generic_functionGVKe Kllvm_function_value_tableVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K45,
  &K44,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLclassGVKd KLllvm_argumentGVllvm = {
  &KLclassGVKdW /* wrapper */,
  &Kclass_instanceQ_initialVKiI,
  &K42,
  &K8,
  (dylan_value) 1,
  &Kllvm_moduleYdylan_userVllvm
};

_KLmm_wrapperGVKi_0 KLllvm_argumentGVllvmW = {
  &KLmm_wrapperGVKiW /* wrapper */,
  &K8,
  (dylan_value) 1,
  17,
  33554439,
  (dylan_value) 1
};

static _KLimplementation_classGVKe K8 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 477102097,
  &KLllvm_argumentGVllvm,
  &KLllvm_argumentGVllvmW,
  &KPfalseVKi,
  &K9,
  (dylan_value) -3,
  &KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0,
  &K12,
  &K13,
  (dylan_value) 9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K9,
  &K9,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_4 K9 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 17,
  &Kllvm_value_typeVllvmHLllvm_argumentG,
  &Kllvm_argument_nameVllvmHLllvm_argumentG,
  &Kllvm_argument_attributesVllvmHLllvm_argumentG,
  &Kllvm_argument_indexVllvmHLllvm_argumentG
};

_KLkeyword_methodGVKe KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep_6,
  &K19,
  &key_mep_2,
  &KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0I,
  &K20
};

static _KLsimple_object_vectorGVKd_1 K12 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLllvm_valueGVllvm
};

static _KLsimple_object_vectorGVKd_6 K13 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &KLobjectGVKd,
  &KLllvm_valueGVllvm,
  &KLllvm_argumentGVllvm,
  &KPfalseVKi,
  &KPfalseVKi,
  &KPfalseVKi
};

static _KLbyte_stringGVKd_23 K14 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 93,
  "Missing init keyword %="
};

static _KLsymbolGVKd KJindex_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K18
};

static _KLunionGVKe K16 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K17,
  &KLstringGVKd
};

static _KLsingletonGVKd K17 = {
  &KLsingletonGVKdW /* wrapper */,
  &Ksingleton_pointer_idQ_instanceQVKiI,
  &KPfalseVKi
};

static _KLbyte_stringGVKd_5 K18 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 21,
  "index"
};

static _KLkeyword_signatureAvaluesGVKi K19 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K24,
  &KDsignature_LobjectG_typesVKi,
  &K25
};

static _KLsimple_object_vectorGVKd_8 K20 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 33,
  &KJtype_,
  &KPunboundVKi,
  &KJname_,
  &KPfalseVKi,
  &KJattributes_,
  &K22,
  &KJindex_,
  &KPunboundVKi
};

static _KLsymbolGVKd KJattributes_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K23
};

static _KLmachine_wordGVKe K22 = {
  &KLmachine_wordGVKeW /* wrapper */,
  0
};

static _KLbyte_stringGVKd_10 K23 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 41,
  "attributes"
};

static _KLsimple_object_vectorGVKd_4 K24 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 17,
  &KJtype_,
  &KJname_,
  &KJattributes_,
  &KJindex_
};

static _KLsimple_object_vectorGVKd_1 K25 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLllvm_argumentGVllvm
};

_KLinstance_slot_descriptorGVKe Kllvm_value_typeVllvmHLllvm_argumentG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 193,
  &KPfalseVKi,
  &KLllvm_argumentGVllvm,
  &KJtype_,
  &Kllvm_value_typeVllvm,
  &KPfalseVKi,
  &KLllvm_typeGVllvm
};

_KLinstance_slot_descriptorGVKe Kllvm_argument_nameVllvmHLllvm_argumentG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 157,
  &KPfalseVKi,
  &KLllvm_argumentGVllvm,
  &KJname_,
  &Kllvm_argument_nameVllvm,
  &KPfalseVKi,
  &K16
};

_KLinstance_slot_descriptorGVKe Kllvm_argument_attributesVllvmHLllvm_argumentG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 157,
  &K22,
  &KLllvm_argumentGVllvm,
  &KJattributes_,
  &Kllvm_argument_attributesVllvm,
  &KPfalseVKi,
  &KLmachine_wordGVKe
};

_KLinstance_slot_descriptorGVKe Kllvm_argument_indexVllvmHLllvm_argumentG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 193,
  &KPfalseVKi,
  &KLllvm_argumentGVllvm,
  &KJindex_,
  &Kllvm_argument_indexVllvm,
  &KPfalseVKi,
  &KLintegerGVKd
};

_KLsealed_generic_functionGVKe Kllvm_argument_indexVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K33,
  &K32,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_argument_indexVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_argument_indexVllvmHLllvm_argumentG
};

static _KLpairGVKd K32 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_argument_indexVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_19 K33 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 77,
  "llvm-argument-index"
};

_KLsealed_generic_functionGVKe Kllvm_argument_attributesVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K37,
  &K36,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_argument_attributesVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_argument_attributesVllvmHLllvm_argumentG
};

static _KLpairGVKd K36 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_argument_attributesVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_24 K37 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 97,
  "llvm-argument-attributes"
};

_KLsealed_generic_functionGVKe Kllvm_argument_nameVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K41,
  &K40,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_argument_nameVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_argument_nameVllvmHLllvm_argumentG
};

static _KLpairGVKd K40 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_argument_nameVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_18 K41 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 73,
  "llvm-argument-name"
};

static _KLbyte_stringGVKd_15 K42 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 61,
  "<llvm-argument>"
};

_KLgetter_methodGVKi Kllvm_function_value_tableVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_value_tableVllvmHLllvm_functionG
};

static _KLpairGVKd K44 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_value_tableVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_25 K45 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 101,
  "llvm-function-value-table"
};

_KLinstance_slot_descriptorGVKe Kllvm_function_value_tableVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 149,
  &K49,
  &KLllvm_functionGVllvm,
  &KPfalseVKi,
  &Kllvm_function_value_tableVllvm,
  &KPfalseVKi,
  &KLmutable_explicit_key_collectionGVKd
};

static _KLsimple_closure_methodGVKi_0 K49 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K50,
  &K49I,
  (dylan_value) 1
};

static _KLsignatureGVKe K50 = {
  &KLsignatureGVKeW /* wrapper */,
  (dylan_value) 41944065,
  &KPempty_vectorVKi
};

_KLgetter_methodGVKi Kllvm_function_basic_blocksVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_basic_blocksVllvmHLllvm_functionG
};

static _KLpairGVKd K52 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_basic_blocksVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_26 K53 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 105,
  "llvm-function-basic-blocks"
};

_KLinstance_slot_descriptorGVKe Kllvm_function_basic_blocksVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 149,
  &K57,
  &KLllvm_functionGVllvm,
  &KPfalseVKi,
  &Kllvm_function_basic_blocksVllvm,
  &KPfalseVKi,
  &KLsequenceGVKd
};

static _KLsimple_closure_methodGVKi_0 K57 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K50,
  &K57I,
  (dylan_value) 1
};

_KLgetter_methodGVKi Kllvm_function_garbage_collectorYllvm_internalsVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG
};

static _KLpairGVKd K59 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_garbage_collectorYllvm_internalsVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_31 K60 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 125,
  "llvm-function-garbage-collector"
};

_KLinstance_slot_descriptorGVKe Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 157,
  &KPfalseVKi,
  &KLllvm_functionGVllvm,
  &KJgarbage_collector_,
  &Kllvm_function_garbage_collectorYllvm_internalsVllvm,
  &KPfalseVKi,
  &K16
};

static _KLsymbolGVKd KJgarbage_collector_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K63
};

static _KLbyte_stringGVKd_17 K63 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 69,
  "garbage-collector"
};

static _KLimplementation_classGVKe K64 = {
  &KLimplementation_classGVKeW /* wrapper */,
  (dylan_value) 527433781,
  &KLllvm_functionGVllvm,
  &KLllvm_functionGVllvmW,
  &KPfalseVKi,
  &K65,
  (dylan_value) -3,
  &KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0,
  &K68,
  &K69,
  (dylan_value) 17,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_listVKi,
  &KPempty_vectorVKi,
  &K70,
  &K65,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi,
  &KPempty_vectorVKi
};

static _KLsimple_object_vectorGVKd_13 K65 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 53,
  &Kllvm_value_typeVllvmHLllvm_constant_valueG,
  &Kllvm_global_nameVllvmHLllvm_global_valueG,
  &Kllvm_global_linkage_kindYllvm_internalsVllvmHLllvm_global_valueG,
  &Kllvm_global_visibility_kindYllvm_internalsVllvmHLllvm_global_valueG,
  &Kllvm_global_unnamed_addressQYllvm_internalsVllvmHLllvm_global_valueG,
  &Kllvm_global_alignmentYllvm_internalsVllvmHLllvm_global_valueG,
  &Kllvm_global_sectionYllvm_internalsVllvmHLllvm_global_valueG,
  &Kllvm_function_calling_conventionVllvmHLllvm_functionG,
  &Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG,
  &Kllvm_function_argumentsVllvmHLllvm_functionG,
  &Kllvm_function_attribute_listVllvmHLllvm_functionG,
  &Kllvm_function_basic_blocksVllvmHLllvm_functionG,
  &Kllvm_function_value_tableVllvmHLllvm_functionG
};

_KLkeyword_methodGVKe KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0 = {
  &KLkeyword_methodGVKeW /* wrapper */,
  &rest_key_xep,
  &K105,
  &key_mep_2,
  &KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0I,
  &K106
};

static _KLsimple_object_vectorGVKd_1 K68 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLllvm_global_valueGVllvm
};

static _KLsimple_object_vectorGVKd_6 K69 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &KLobjectGVKd,
  &KLllvm_valueGVllvm,
  &KLllvm_constant_valueGVllvm,
  &KLllvm_global_valueGVllvm,
  &KLllvm_functionGVllvm,
  &KPfalseVKi
};

static _KLsimple_object_vectorGVKd_6 K70 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 25,
  &Kllvm_function_calling_conventionVllvmHLllvm_functionG,
  &Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG,
  &Kllvm_function_argumentsVllvmHLllvm_functionG,
  &Kllvm_function_attribute_listVllvmHLllvm_functionG,
  &Kllvm_function_basic_blocksVllvmHLllvm_functionG,
  &Kllvm_function_value_tableVllvmHLllvm_functionG
};

_KLinstance_slot_descriptorGVKe Kllvm_function_calling_conventionVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 157,
  (dylan_value) 1,
  &KLllvm_functionGVllvm,
  &KJcalling_convention_,
  &Kllvm_function_calling_conventionVllvm,
  &KPfalseVKi,
  &KLintegerGVKd
};

_KLinstance_slot_descriptorGVKe Kllvm_function_argumentsVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 157,
  &KPempty_vectorVKi,
  &KLllvm_functionGVllvm,
  &KJarguments_,
  &Kllvm_function_argumentsVllvm,
  &KPfalseVKi,
  &KLsequenceGVKd
};

_KLinstance_slot_descriptorGVKe Kllvm_function_attribute_listVllvmHLllvm_functionG = {
  &KLinstance_slot_descriptorGVKeW /* wrapper */,
  (dylan_value) 149,
  &K82,
  &KLllvm_functionGVllvm,
  &KJattribute_list_,
  &Kllvm_function_attribute_listVllvm,
  &KPfalseVKi,
  &KLllvm_attribute_listGVllvm
};

static _KLsimple_closure_methodGVKi_0 K82 = {
  &KLsimple_closure_methodGVKiW /* wrapper */,
  &xep_0,
  &K50,
  &K82I,
  (dylan_value) 1
};

static _KLsymbolGVKd KJattribute_list_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K81
};

_KLsealed_generic_functionGVKe Kllvm_function_attribute_listVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K80,
  &K79,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_function_attribute_listVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_attribute_listVllvmHLllvm_functionG
};

static _KLpairGVKd K79 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_attribute_listVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_28 K80 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 113,
  "llvm-function-attribute-list"
};

static _KLbyte_stringGVKd_14 K81 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 57,
  "attribute-list"
};

_KLsealed_generic_functionGVKe Kllvm_function_argumentsVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K86,
  &K85,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_function_argumentsVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_argumentsVllvmHLllvm_functionG
};

static _KLpairGVKd K85 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_argumentsVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_23 K86 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 93,
  "llvm-function-arguments"
};

static _KLsymbolGVKd KJcalling_convention_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K92
};

_KLsealed_generic_functionGVKe Kllvm_function_calling_conventionVllvm = {
  &KLsealed_generic_functionGVKeW /* wrapper */,
  &gf_xep_1,
  &KDsignature_LobjectG_object_rest_value_1VKi,
  &KPfalseVKi,
  &K91,
  &K90,
  &RSINGULAR_Labsent_engine_nodeG
};

_KLgetter_methodGVKi Kllvm_function_calling_conventionVllvmMM0 = {
  &KLgetter_methodGVKiW /* wrapper */,
  &slotacc_single_q_instance_getter_xep,
  &Kllvm_function_calling_conventionVllvmHLllvm_functionG
};

static _KLpairGVKd K90 = {
  &KLpairGVKdW /* wrapper */,
  &Kllvm_function_calling_conventionVllvmMM0,
  &KPempty_listVKi
};

static _KLbyte_stringGVKd_32 K91 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 129,
  "llvm-function-calling-convention"
};

static _KLbyte_stringGVKd_18 K92 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 73,
  "calling-convention"
};

static _KLsymbolGVKd KJlinkage_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K103
};

static _KLunionGVKe K96 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K97,
  &KLstringGVKd
};

static _KLunionGVKe K97 = {
  &KLunionGVKeW /* wrapper */,
  &Kunion_instanceQVKiI,
  &K17,
  &KLintegerGVKd
};

static _KLbyte_stringGVKd_7 K103 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "linkage"
};

static _KLkeyword_signatureAvaluesGVKi K105 = {
  &KLkeyword_signatureAvaluesGVKiW /* wrapper */,
  (dylan_value) 35390469,
  &KDsignature_LclassG_typesVKi,
  &K115,
  &KDsignature_LobjectG_typesVKi,
  &K116
};

static _KLsimple_object_vectorGVKd_22 K106 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 89,
  &KJtype_,
  &KPunboundVKi,
  &KJname_,
  &KPfalseVKi,
  &KJlinkage_,
  &KPunboundVKi,
  &KJvisibility_,
  &KJdefault_,
  &KJunnamed_addressQ_,
  &KPfalseVKi,
  &KJalignment_,
  &KPfalseVKi,
  &KJsection_,
  &KPfalseVKi,
  &KJcalling_convention_,
  (dylan_value) 1,
  &KJgarbage_collector_,
  &KPfalseVKi,
  &KJarguments_,
  &KPempty_vectorVKi,
  &KJattribute_list_,
  &KPunboundVKi
};

static _KLsymbolGVKd KJvisibility_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K114
};

static _KLsymbolGVKd KJunnamed_addressQ_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K113
};

static _KLsymbolGVKd KJalignment_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K112
};

static _KLsymbolGVKd KJsection_ = {
  &KLsymbolGVKdW /* wrapper */,
  &K111
};

static _KLbyte_stringGVKd_7 K111 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 29,
  "section"
};

static _KLbyte_stringGVKd_9 K112 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 37,
  "alignment"
};

static _KLbyte_stringGVKd_16 K113 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 65,
  "unnamed-address?"
};

static _KLbyte_stringGVKd_10 K114 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 41,
  "visibility"
};

static _KLsimple_object_vectorGVKd_11 K115 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 45,
  &KJtype_,
  &KJname_,
  &KJlinkage_,
  &KJvisibility_,
  &KJunnamed_addressQ_,
  &KJalignment_,
  &KJsection_,
  &KJcalling_convention_,
  &KJgarbage_collector_,
  &KJarguments_,
  &KJattribute_list_
};

static _KLsimple_object_vectorGVKd_1 K116 = {
  &KLsimple_object_vectorGVKdW /* wrapper */,
  (dylan_value) 5,
  &KLllvm_functionGVllvm
};

static _KLbyte_stringGVKd_15 K117 = {
  &KLbyte_stringGVKdW /* wrapper */,
  (dylan_value) 61,
  "<llvm-function>"
};

/* Code */

dylan_value KLllvm_argumentGZ32ZconstructorYllvm_internalsVllvmMM0I (dylan_value class_, dylan_value init_args_, dylan_value Uunique_llvm_value_type_, dylan_value Uunique_llvm_argument_name_, dylan_value Uunique_llvm_argument_attributes_, dylan_value Uunique_llvm_argument_index_) {
  dylan_value T7;
  dylan_value Uunique_llvm_value_typeF8;
  dylan_value T9;
  dylan_value Uunique_llvm_argument_indexF10;
  dylan_value T11;
  dylan_value Uunique_llvm_value_typeF12;
  dylan_value Uunique_llvm_argument_nameF13;
  dylan_value Uunique_llvm_argument_attributesF14;
  dylan_value Uunique_llvm_argument_indexF15;
  dylan_value T16_0;
  dylan_value T17;
  _KLsimple_object_vectorGVKd_1 T18 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T19;
  dylan_value T20;
  _KLsimple_object_vectorGVKd_1 T21 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T22;

  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  T17 = primitive_idQ(Uunique_llvm_value_type_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  if (T17 != &KPfalseVKi) {
    T18.vector_element_[0] = &KJtype_;
    T19 = KerrorVKdMM1I(&K14, &T18);
    // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
    T7 = T19;
    Uunique_llvm_value_typeF8 = T7;
  } else {
    Uunique_llvm_value_typeF8 = Uunique_llvm_value_type_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  T20 = primitive_idQ(Uunique_llvm_argument_index_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  if (T20 != &KPfalseVKi) {
    T21.vector_element_[0] = IKJindex_;
    T22 = KerrorVKdMM1I(&K14, &T21);
    // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
    T9 = T22;
    Uunique_llvm_argument_indexF10 = T9;
  } else {
    Uunique_llvm_argument_indexF10 = Uunique_llvm_argument_index_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  T11 = primitive_object_allocate_filled(5,&KLllvm_argumentGVllvmW,4,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_llvm_value_typeF8, &KLllvm_typeGVllvm);
  Uunique_llvm_value_typeF12 = Uunique_llvm_value_typeF8;
  SLOT_VALUE_SETTER(Uunique_llvm_value_typeF12, T11, 0);
  primitive_type_check(Uunique_llvm_argument_name_, &K16);
  Uunique_llvm_argument_nameF13 = Uunique_llvm_argument_name_;
  SLOT_VALUE_SETTER(Uunique_llvm_argument_nameF13, T11, 1);
  primitive_type_check(Uunique_llvm_argument_attributes_, &KLmachine_wordGVKe);
  Uunique_llvm_argument_attributesF14 = Uunique_llvm_argument_attributes_;
  SLOT_VALUE_SETTER(Uunique_llvm_argument_attributesF14, T11, 2);
  primitive_type_check(Uunique_llvm_argument_indexF10, &KLintegerGVKd);
  Uunique_llvm_argument_indexF15 = Uunique_llvm_argument_indexF10;
  SLOT_VALUE_SETTER(Uunique_llvm_argument_indexF15, T11, 3);
  APPLY2(&KinitializeVKd, T11, init_args_);
  T16_0 = T11;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:37
  MV_SET_COUNT(1);
  return(T16_0);
}

static dylan_value K49I () {
  dylan_value T0;
  dylan_value T1_0;

  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:34
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:34
  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T0 = CONGRUENT_CALL2(&KLstring_tableGVKe, &KPempty_vectorVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:34
  T1_0 = T0;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:34
  MV_SET_COUNT(1);
  return(T1_0);
}

static dylan_value K57I () {
  dylan_value T0_0;
  dylan_value T1;
  dylan_value T2_0;

  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:32
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:32
  T2_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:32
  T1 = T2_0;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:32
  T0_0 = T1;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:32
  MV_SET_COUNT(1);
  return(T0_0);
}

dylan_value KLllvm_functionGZ32ZconstructorYllvm_internalsVllvmMM0I (dylan_value class_, dylan_value init_args_, dylan_value Uunique_llvm_value_type_, dylan_value Uunique_llvm_global_name_, dylan_value Uunique_llvm_global_linkage_kind_, dylan_value Uunique_llvm_global_visibility_kind_, dylan_value Uunique_llvm_global_unnamed_addressQ_, dylan_value Uunique_llvm_global_alignment_, dylan_value Uunique_llvm_global_section_, dylan_value Uunique_llvm_function_calling_convention_, dylan_value Uunique_llvm_function_garbage_collector_, dylan_value Uunique_llvm_function_arguments_, dylan_value Uunique_llvm_function_attribute_list_) {
  dylan_value T14;
  dylan_value T15;
  dylan_value Uunique_llvm_value_typeF16;
  dylan_value T17;
  dylan_value Uunique_llvm_global_linkage_kindF18;
  dylan_value T19;
  dylan_value T20;
  dylan_value Uunique_llvm_function_attribute_listF21;
  dylan_value T22;
  dylan_value Uunique_llvm_value_typeF23;
  dylan_value Uunique_llvm_global_nameF24;
  dylan_value Uunique_llvm_global_linkage_kindF25;
  dylan_value Uunique_llvm_global_visibility_kindF26;
  dylan_value Uunique_llvm_global_unnamed_addressQF27;
  dylan_value Uunique_llvm_global_alignmentF28;
  dylan_value Uunique_llvm_global_sectionF29;
  dylan_value Uunique_llvm_function_calling_conventionF30;
  dylan_value Uunique_llvm_function_garbage_collectorF31;
  dylan_value Uunique_llvm_function_argumentsF32;
  dylan_value Uunique_llvm_function_attribute_listF33;
  dylan_value T34;
  dylan_value T35;
  dylan_value T36_0;
  dylan_value T37;
  dylan_value T38;
  _KLsimple_object_vectorGVKd_1 T39 = {&KLsimple_object_vectorGVKdW, (dylan_value) 5};
  dylan_value T40;
  dylan_value T41;

  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  T37 = primitive_idQ(Uunique_llvm_value_type_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  if (T37 != &KPfalseVKi) {
    T14 = K104I();
    // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
    T15 = T14;
    Uunique_llvm_value_typeF16 = T15;
  } else {
    Uunique_llvm_value_typeF16 = Uunique_llvm_value_type_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  T38 = primitive_idQ(Uunique_llvm_global_linkage_kind_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  if (T38 != &KPfalseVKi) {
    T39.vector_element_[0] = IKJlinkage_;
    T40 = KerrorVKdMM1I(&K14, &T39);
    // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
    T17 = T40;
    Uunique_llvm_global_linkage_kindF18 = T17;
  } else {
    Uunique_llvm_global_linkage_kindF18 = Uunique_llvm_global_linkage_kind_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  T41 = primitive_idQ(Uunique_llvm_function_attribute_list_,&KPunboundVKi);
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  if (T41 != &KPfalseVKi) {
    T19 = K102I();
    // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
    T20 = T19;
    Uunique_llvm_function_attribute_listF21 = T20;
  } else {
    Uunique_llvm_function_attribute_listF21 = Uunique_llvm_function_attribute_list_;
  }
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  T22 = primitive_object_allocate_filled(14,&KLllvm_functionGVllvmW,13,&KPunboundVKi,0,0,&KPunboundVKi);
  primitive_type_check(Uunique_llvm_value_typeF16, &KLllvm_typeGVllvm);
  Uunique_llvm_value_typeF23 = Uunique_llvm_value_typeF16;
  SLOT_VALUE_SETTER(Uunique_llvm_value_typeF23, T22, 0);
  primitive_type_check(Uunique_llvm_global_name_, &K96);
  Uunique_llvm_global_nameF24 = Uunique_llvm_global_name_;
  SLOT_VALUE_SETTER(Uunique_llvm_global_nameF24, T22, 1);
  primitive_type_check(Uunique_llvm_global_linkage_kindF18, &KLllvm_linkage_kindGYllvm_internalsVllvm);
  Uunique_llvm_global_linkage_kindF25 = Uunique_llvm_global_linkage_kindF18;
  SLOT_VALUE_SETTER(Uunique_llvm_global_linkage_kindF25, T22, 2);
  primitive_type_check(Uunique_llvm_global_visibility_kind_, &KLllvm_visibility_kindGYllvm_internalsVllvm);
  Uunique_llvm_global_visibility_kindF26 = Uunique_llvm_global_visibility_kind_;
  SLOT_VALUE_SETTER(Uunique_llvm_global_visibility_kindF26, T22, 3);
  primitive_type_check(Uunique_llvm_global_unnamed_addressQ_, &KLbooleanGVKd);
  Uunique_llvm_global_unnamed_addressQF27 = Uunique_llvm_global_unnamed_addressQ_;
  SLOT_VALUE_SETTER(Uunique_llvm_global_unnamed_addressQF27, T22, 4);
  primitive_type_check(Uunique_llvm_global_alignment_, &K97);
  Uunique_llvm_global_alignmentF28 = Uunique_llvm_global_alignment_;
  SLOT_VALUE_SETTER(Uunique_llvm_global_alignmentF28, T22, 5);
  primitive_type_check(Uunique_llvm_global_section_, &K16);
  Uunique_llvm_global_sectionF29 = Uunique_llvm_global_section_;
  SLOT_VALUE_SETTER(Uunique_llvm_global_sectionF29, T22, 6);
  primitive_type_check(Uunique_llvm_function_calling_convention_, &KLintegerGVKd);
  Uunique_llvm_function_calling_conventionF30 = Uunique_llvm_function_calling_convention_;
  SLOT_VALUE_SETTER(Uunique_llvm_function_calling_conventionF30, T22, 7);
  primitive_type_check(Uunique_llvm_function_garbage_collector_, &K16);
  Uunique_llvm_function_garbage_collectorF31 = Uunique_llvm_function_garbage_collector_;
  SLOT_VALUE_SETTER(Uunique_llvm_function_garbage_collectorF31, T22, 8);
  primitive_type_check(Uunique_llvm_function_arguments_, &KLsequenceGVKd);
  Uunique_llvm_function_argumentsF32 = Uunique_llvm_function_arguments_;
  SLOT_VALUE_SETTER(Uunique_llvm_function_argumentsF32, T22, 9);
  primitive_type_check(Uunique_llvm_function_attribute_listF21, &KLllvm_attribute_listGVllvm);
  Uunique_llvm_function_attribute_listF33 = Uunique_llvm_function_attribute_listF21;
  SLOT_VALUE_SETTER(Uunique_llvm_function_attribute_listF33, T22, 10);
  T34 = K101I();
  SLOT_VALUE_SETTER(T34, T22, 11);
  T35 = K100I();
  SLOT_VALUE_SETTER(T35, T22, 12);
  APPLY2(&KinitializeVKd, T22, init_args_);
  T36_0 = T22;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:22
  MV_SET_COUNT(1);
  return(T36_0);
}

static dylan_value K82I () {
  dylan_value T0_0;

  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:30
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:30
  T0_0 = Dllvm_empty_attribute_listYllvm_internalsVllvm;
  // /home/bruce/Development/dylan/opendylan/sources/lib/llvm/llvm-function.dylan:30
  MV_SET_COUNT(1);
  return(T0_0);
}

static dylan_value K104I () {
  dylan_value T0;
  dylan_value T1_0;

  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T0 = CONGRUENT_CALL2(&KLllvm_opaque_typeGVllvm, &KPempty_vectorVKi);
  T1_0 = T0;
  MV_SET_COUNT(1);
  return(T1_0);
}

static dylan_value K102I () {
  dylan_value T0_0;

  T0_0 = Dllvm_empty_attribute_listYllvm_internalsVllvm;
  MV_SET_COUNT(1);
  return(T0_0);
}

static dylan_value K101I () {
  dylan_value T0_0;
  dylan_value T1;
  dylan_value T2_0;

  T2_0 = KLstretchy_object_vectorGZ32ZconstructorVKiMM0I(&KLstretchy_object_vectorGVKe, &KPempty_vectorVKi);
  T1 = T2_0;
  T0_0 = T1;
  MV_SET_COUNT(1);
  return(T0_0);
}

static dylan_value K100I () {
  dylan_value T0;
  dylan_value T1_0;

  CONGRUENT_CALL_PROLOG(&KmakeVKd, 2);
  T0 = CONGRUENT_CALL2(&KLstring_tableGVKe, &KPempty_vectorVKi);
  T1_0 = T0;
  MV_SET_COUNT(1);
  return(T1_0);
}


/* SYSTEM INIT CODE */

void _Init_llvm__X_llvm_function_for_system () {
  extern dylan_value KPresolve_symbolVKiI(dylan_value);
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJindex_);
    if (T0 != &KJindex_) {
      primitive_slot_value_setter(T0, &Kllvm_argument_indexVllvmHLllvm_argumentG, 3);
      primitive_repeated_slot_value_setter(T0, &K24, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K20, 1, 6);
      IKJindex_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJattributes_);
    if (T0 != &KJattributes_) {
      primitive_slot_value_setter(T0, &Kllvm_argument_attributesVllvmHLllvm_argumentG, 3);
      primitive_repeated_slot_value_setter(T0, &K24, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K20, 1, 4);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJgarbage_collector_);
    if (T0 != &KJgarbage_collector_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 8);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 16);
      primitive_slot_value_setter(T0, &Kllvm_function_garbage_collectorYllvm_internalsVllvmHLllvm_functionG, 3);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJattribute_list_);
    if (T0 != &KJattribute_list_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 10);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 20);
      primitive_slot_value_setter(T0, &Kllvm_function_attribute_listVllvmHLllvm_functionG, 3);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJcalling_convention_);
    if (T0 != &KJcalling_convention_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 7);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 14);
      primitive_slot_value_setter(T0, &Kllvm_function_calling_conventionVllvmHLllvm_functionG, 3);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJlinkage_);
    if (T0 != &KJlinkage_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 2);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 4);
      IKJlinkage_ = T0;
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJvisibility_);
    if (T0 != &KJvisibility_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 3);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 6);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJunnamed_addressQ_);
    if (T0 != &KJunnamed_addressQ_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 4);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 8);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJalignment_);
    if (T0 != &KJalignment_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 5);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 10);
    }
  }
  {
    dylan_value T0;

    T0 = KPresolve_symbolVKiI(&KJsection_);
    if (T0 != &KJsection_) {
      primitive_repeated_slot_value_setter(T0, &K115, 1, 6);
      primitive_repeated_slot_value_setter(T0, &K106, 1, 12);
    }
  }
  return;
}

/* USER INIT CODE */

void _Init_llvm__X_llvm_function_for_user () {
  return;
}


/* eof */
