---
source: crates/mun_codegen/src/test.rs
expression: "\n pub fn assign(a: i64, b: i64) -> i64 {\n a = b;\n a\n }\n pub fn assign_add(a: i64, b: i64) -> i64 {\n a += b;\n a\n }\n pub fn assign_subtract(a: i64, b: i64) -> i64 {\n a -= b;\n a\n }\n pub fn assign_multiply(a: i64, b: i64) -> i64 {\n a *= b;\n a\n }\n pub fn assign_divide(a: i64, b: i64) -> i64 {\n a /= b;\n a\n }\n pub fn assign_remainder(a: i64, b: i64) -> i64 {\n a %= b;\n a\n }\n "
---
; == FILE IR (mod) =====================================
; ModuleID = 'mod'
source_filename = "mod"
%"mun_codegen::ir::types::TypeInfo" = type <{ [0 x i64], [16 x i8], [0 x i64], i8*, [0 x i64], i32, [0 x i64], i8, [3 x i8], %"mun_codegen::ir::types::TypeInfoData", [0 x i64] }>
%"mun_codegen::ir::types::TypeInfoData" = type <{ [0 x i8], i8, [39 x i8] }>
@global_type_table = external global [1 x %"mun_codegen::ir::types::TypeInfo"*]
define i64 @assign(i64 %0, i64 %1) {
body:
ret i64 %1
}
define i64 @assign_add(i64 %0, i64 %1) {
body:
%add = add i64 %0, %1
ret i64 %add
}
define i64 @assign_subtract(i64 %0, i64 %1) {
body:
%sub = sub i64 %0, %1
ret i64 %sub
}
define i64 @assign_multiply(i64 %0, i64 %1) {
body:
%mul = mul i64 %0, %1
ret i64 %mul
}
define i64 @assign_divide(i64 %0, i64 %1) {
body:
%div = sdiv i64 %0, %1
ret i64 %div
}
define i64 @assign_remainder(i64 %0, i64 %1) {
body:
%rem = srem i64 %0, %1
ret i64 %rem
}
; == GROUP IR (mod) ====================================
; ModuleID = 'group_name'
source_filename = "group_name"
%"mun_codegen::ir::types::TypeInfo" = type <{ [0 x i64], [16 x i8], [0 x i64], i8*, [0 x i64], i32, [0 x i64], i8, [3 x i8], %"mun_codegen::ir::types::TypeInfoData", [0 x i64] }>
%"mun_codegen::ir::types::TypeInfoData" = type <{ [0 x i8], i8, [39 x i8] }>
@"type_info::<core::i64>::name" = private unnamed_addr constant [10 x i8] c"core::i64\00"
@"type_info::<core::i64>" = private unnamed_addr constant <{ [16 x i8], i8*, [48 x i8] }> <{ [16 x i8] c"G\13;t\97j8\18\D7M\83`\1D\C8\19%", i8* getelementptr inbounds ([10 x i8], [10 x i8]* @"type_info::<core::i64>::name", i32 0, i32 0), [48 x i8] c"@\00\00\00\08\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00" }>
@global_type_table = constant [1 x %"mun_codegen::ir::types::TypeInfo"*] [%"mun_codegen::ir::types::TypeInfo"* @"type_info::<core::i64>"]