---
source: crates/mun_codegen/src/test.rs
expression: "\n pub fn not(a: bool) -> bool { !a }\n pub fn bitand(a: bool, b: bool) -> bool { a & b }\n pub fn bitor(a: bool, b: bool) -> bool { a | b }\n pub fn bitxor(a: bool, b: bool) -> bool { a ^ b }\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 i1 @not(i1 %0) {
body:
%not = xor i1 %0, true
ret i1 %not
}
define i1 @bitand(i1 %0, i1 %1) {
body:
%bit_and = and i1 %0, %1
ret i1 %bit_and
}
define i1 @bitor(i1 %0, i1 %1) {
body:
%bit_or = or i1 %0, %1
ret i1 %bit_or
}
define i1 @bitxor(i1 %0, i1 %1) {
body:
%bit_xor = xor i1 %0, %1
ret i1 %bit_xor
}
; == 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::bool>::name" = private unnamed_addr constant [11 x i8] c"core::bool\00"
@"type_info::<core::bool>" = private unnamed_addr constant <{ [16 x i8], i8*, [48 x i8] }> <{ [16 x i8] c"x\82\81m t7\03\CB\F8k\81-;\C9\84", i8* getelementptr inbounds ([11 x i8], [11 x i8]* @"type_info::<core::bool>::name", i32 0, i32 0), [48 x i8] c"\01\00\00\00\01\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::bool>"]