void disable(unsigned int *heat_core) {
  heat_core[0] = (("00000000000000000000000000000000"[0] == '1') << 31 |
                  ("00000000000000000000000000000000"[1] == '1') << 30 |
                  ("00000000000000000000000000000000"[2] == '1') << 29 |
                  ("00000000000000000000000000000000"[3] == '1') << 28 |
                  ("00000000000000000000000000000000"[4] == '1') << 27 |
                  ("00000000000000000000000000000000"[5] == '1') << 26 |
                  ("00000000000000000000000000000000"[6] == '1') << 25 |
                  ("00000000000000000000000000000000"[7] == '1') << 24 |
                  ("00000000000000000000000000000000"[8] == '1') << 23 |
                  ("00000000000000000000000000000000"[9] == '1') << 22 |
                  ("00000000000000000000000000000000"[10] == '1') << 21 |
                  ("00000000000000000000000000000000"[11] == '1') << 20 |
                  ("00000000000000000000000000000000"[12] == '1') << 19 |
                  ("00000000000000000000000000000000"[13] == '1') << 18 |
                  ("00000000000000000000000000000000"[14] == '1') << 17 |
                  ("00000000000000000000000000000000"[15] == '1') << 16 |
                  ("00000000000000000000000000000000"[16] == '1') << 15 |
                  ("00000000000000000000000000000000"[17] == '1') << 14 |
                  ("00000000000000000000000000000000"[18] == '1') << 13 |
                  ("00000000000000000000000000000000"[19] == '1') << 12 |
                  ("00000000000000000000000000000000"[20] == '1') << 11 |
                  ("00000000000000000000000000000000"[21] == '1') << 10 |
                  ("00000000000000000000000000000000"[22] == '1') << 9 |
                  ("00000000000000000000000000000000"[23] == '1') << 8 |
                  ("00000000000000000000000000000000"[24] == '1') << 7 |
                  ("00000000000000000000000000000000"[25] == '1') << 6 |
                  ("00000000000000000000000000000000"[26] == '1') << 5 |
                  ("00000000000000000000000000000000"[27] == '1') << 4 |
                  ("00000000000000000000000000000000"[28] == '1') << 3 |
                  ("00000000000000000000000000000000"[29] == '1') << 2 |
                  ("00000000000000000000000000000000"[30] == '1') << 1 |
                  ("00000000000000000000000000000000"[31] == '1') << 0);
  ;
}


x86 assembly (clang, -O0):
<disable>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x8(%rbp)
movsbl 0xef1(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%ecx
shl    $0x1f,%ecx
movsbl 0xedd(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1e,%eax
or     %eax,%ecx
movsbl 0xec7(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1d,%eax
or     %eax,%ecx
movsbl 0xeb1(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1c,%eax
or     %eax,%ecx
movsbl 0xe9b(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1b,%eax
or     %eax,%ecx
movsbl 0xe85(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1a,%eax
or     %eax,%ecx
movsbl 0xe6f(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x19,%eax
or     %eax,%ecx
movsbl 0xe59(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x18,%eax
or     %eax,%ecx
movsbl 0xe43(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x17,%eax
or     %eax,%ecx
movsbl 0xe2d(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x16,%eax
or     %eax,%ecx
movsbl 0xe17(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x15,%eax
or     %eax,%ecx
movsbl 0xe01(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x14,%eax
or     %eax,%ecx
movsbl 0xdeb(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x13,%eax
or     %eax,%ecx
movsbl 0xdd5(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x12,%eax
or     %eax,%ecx
movsbl 0xdbf(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x11,%eax
or     %eax,%ecx
movsbl 0xda9(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x10,%eax
or     %eax,%ecx
movsbl 0xd93(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xf,%eax
or     %eax,%ecx
movsbl 0xd7d(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xe,%eax
or     %eax,%ecx
movsbl 0xd67(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xd,%eax
or     %eax,%ecx
movsbl 0xd51(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xc,%eax
or     %eax,%ecx
movsbl 0xd3b(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xb,%eax
or     %eax,%ecx
movsbl 0xd25(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0xa,%eax
or     %eax,%ecx
movsbl 0xd0f(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x9,%eax
or     %eax,%ecx
movsbl 0xcf9(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x8,%eax
or     %eax,%ecx
movsbl 0xce3(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x7,%eax
or     %eax,%ecx
movsbl 0xccd(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x6,%eax
or     %eax,%ecx
movsbl 0xcb7(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x5,%eax
or     %eax,%ecx
movsbl 0xca1(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x4,%eax
or     %eax,%ecx
movsbl 0xc8b(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x3,%eax
or     %eax,%ecx
movsbl 0xc75(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x2,%eax
or     %eax,%ecx
movsbl 0xc5f(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x1,%eax
or     %eax,%ecx
movsbl 0xc49(%rip),%eax
cmp    $0x31,%eax
sete   %al
and    $0x1,%al
movzbl %al,%eax
shl    $0x0,%eax
or     %eax,%ecx
mov    -0x8(%rbp),%rax
mov    %ecx,(%rax)
pop    %rbp
ret

x86 assembly (clang, -O2):
<disable>:
movl   $0x0,(%rdi)
ret

LLVM IR (-O0):
@.str = [33 x i8] c"00000000000000000000000000000000\00"
define void @disable(i32* %0) {
%2 = alloca i32*
store i32* %0, i32** %2
%3 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 0)
%4 = sext i8 %3 to i32
%5 = icmp eq i32 %4, 49
%6 = zext i1 %5 to i32
%7 = shl i32 %6, 31
%8 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 1)
%9 = sext i8 %8 to i32
%10 = icmp eq i32 %9, 49
%11 = zext i1 %10 to i32
%12 = shl i32 %11, 30
%13 = or i32 %7, %12
%14 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 2)
%15 = sext i8 %14 to i32
%16 = icmp eq i32 %15, 49
%17 = zext i1 %16 to i32
%18 = shl i32 %17, 29
%19 = or i32 %13, %18
%20 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 3)
%21 = sext i8 %20 to i32
%22 = icmp eq i32 %21, 49
%23 = zext i1 %22 to i32
%24 = shl i32 %23, 28
%25 = or i32 %19, %24
%26 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 4)
%27 = sext i8 %26 to i32
%28 = icmp eq i32 %27, 49
%29 = zext i1 %28 to i32
%30 = shl i32 %29, 27
%31 = or i32 %25, %30
%32 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 5)
%33 = sext i8 %32 to i32
%34 = icmp eq i32 %33, 49
%35 = zext i1 %34 to i32
%36 = shl i32 %35, 26
%37 = or i32 %31, %36
%38 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 6)
%39 = sext i8 %38 to i32
%40 = icmp eq i32 %39, 49
%41 = zext i1 %40 to i32
%42 = shl i32 %41, 25
%43 = or i32 %37, %42
%44 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 7)
%45 = sext i8 %44 to i32
%46 = icmp eq i32 %45, 49
%47 = zext i1 %46 to i32
%48 = shl i32 %47, 24
%49 = or i32 %43, %48
%50 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 8)
%51 = sext i8 %50 to i32
%52 = icmp eq i32 %51, 49
%53 = zext i1 %52 to i32
%54 = shl i32 %53, 23
%55 = or i32 %49, %54
%56 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 9)
%57 = sext i8 %56 to i32
%58 = icmp eq i32 %57, 49
%59 = zext i1 %58 to i32
%60 = shl i32 %59, 22
%61 = or i32 %55, %60
%62 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 10)
%63 = sext i8 %62 to i32
%64 = icmp eq i32 %63, 49
%65 = zext i1 %64 to i32
%66 = shl i32 %65, 21
%67 = or i32 %61, %66
%68 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 11)
%69 = sext i8 %68 to i32
%70 = icmp eq i32 %69, 49
%71 = zext i1 %70 to i32
%72 = shl i32 %71, 20
%73 = or i32 %67, %72
%74 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 12)
%75 = sext i8 %74 to i32
%76 = icmp eq i32 %75, 49
%77 = zext i1 %76 to i32
%78 = shl i32 %77, 19
%79 = or i32 %73, %78
%80 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 13)
%81 = sext i8 %80 to i32
%82 = icmp eq i32 %81, 49
%83 = zext i1 %82 to i32
%84 = shl i32 %83, 18
%85 = or i32 %79, %84
%86 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 14)
%87 = sext i8 %86 to i32
%88 = icmp eq i32 %87, 49
%89 = zext i1 %88 to i32
%90 = shl i32 %89, 17
%91 = or i32 %85, %90
%92 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 15)
%93 = sext i8 %92 to i32
%94 = icmp eq i32 %93, 49
%95 = zext i1 %94 to i32
%96 = shl i32 %95, 16
%97 = or i32 %91, %96
%98 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 16)
%99 = sext i8 %98 to i32
%100 = icmp eq i32 %99, 49
%101 = zext i1 %100 to i32
%102 = shl i32 %101, 15
%103 = or i32 %97, %102
%104 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 17)
%105 = sext i8 %104 to i32
%106 = icmp eq i32 %105, 49
%107 = zext i1 %106 to i32
%108 = shl i32 %107, 14
%109 = or i32 %103, %108
%110 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 18)
%111 = sext i8 %110 to i32
%112 = icmp eq i32 %111, 49
%113 = zext i1 %112 to i32
%114 = shl i32 %113, 13
%115 = or i32 %109, %114
%116 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 19)
%117 = sext i8 %116 to i32
%118 = icmp eq i32 %117, 49
%119 = zext i1 %118 to i32
%120 = shl i32 %119, 12
%121 = or i32 %115, %120
%122 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 20)
%123 = sext i8 %122 to i32
%124 = icmp eq i32 %123, 49
%125 = zext i1 %124 to i32
%126 = shl i32 %125, 11
%127 = or i32 %121, %126
%128 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 21)
%129 = sext i8 %128 to i32
%130 = icmp eq i32 %129, 49
%131 = zext i1 %130 to i32
%132 = shl i32 %131, 10
%133 = or i32 %127, %132
%134 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 22)
%135 = sext i8 %134 to i32
%136 = icmp eq i32 %135, 49
%137 = zext i1 %136 to i32
%138 = shl i32 %137, 9
%139 = or i32 %133, %138
%140 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 23)
%141 = sext i8 %140 to i32
%142 = icmp eq i32 %141, 49
%143 = zext i1 %142 to i32
%144 = shl i32 %143, 8
%145 = or i32 %139, %144
%146 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 24)
%147 = sext i8 %146 to i32
%148 = icmp eq i32 %147, 49
%149 = zext i1 %148 to i32
%150 = shl i32 %149, 7
%151 = or i32 %145, %150
%152 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 25)
%153 = sext i8 %152 to i32
%154 = icmp eq i32 %153, 49
%155 = zext i1 %154 to i32
%156 = shl i32 %155, 6
%157 = or i32 %151, %156
%158 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 26)
%159 = sext i8 %158 to i32
%160 = icmp eq i32 %159, 49
%161 = zext i1 %160 to i32
%162 = shl i32 %161, 5
%163 = or i32 %157, %162
%164 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 27)
%165 = sext i8 %164 to i32
%166 = icmp eq i32 %165, 49
%167 = zext i1 %166 to i32
%168 = shl i32 %167, 4
%169 = or i32 %163, %168
%170 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 28)
%171 = sext i8 %170 to i32
%172 = icmp eq i32 %171, 49
%173 = zext i1 %172 to i32
%174 = shl i32 %173, 3
%175 = or i32 %169, %174
%176 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 29)
%177 = sext i8 %176 to i32
%178 = icmp eq i32 %177, 49
%179 = zext i1 %178 to i32
%180 = shl i32 %179, 2
%181 = or i32 %175, %180
%182 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 30)
%183 = sext i8 %182 to i32
%184 = icmp eq i32 %183, 49
%185 = zext i1 %184 to i32
%186 = shl i32 %185, 1
%187 = or i32 %181, %186
%188 = load i8, i8* getelementptr inbounds ([33 x i8], [33 x i8]* @.str, i64 0, i64 31)
%189 = sext i8 %188 to i32
%190 = icmp eq i32 %189, 49
%191 = zext i1 %190 to i32
%192 = shl i32 %191, 0
%193 = or i32 %187, %192
%194 = load i32*, i32** %2
%195 = getelementptr inbounds i32, i32* %194, i64 0
store i32 %193, i32* %195
ret void
}

LLVM IR (-O2):
define void @disable(i32* nocapture writeonly %0) {
store i32 0, i32* %0
ret void
}