f()1*d41b4e6eSAmir Ayupovint f() { 2*d41b4e6eSAmir Ayupov // This will be removed by BOLT but they make sure we have some extra space 3*d41b4e6eSAmir Ayupov // to insert branches and don't run out of space when rewritting the function. 4*d41b4e6eSAmir Ayupov asm("nop"); 5*d41b4e6eSAmir Ayupov asm("nop"); 6*d41b4e6eSAmir Ayupov asm("nop"); 7*d41b4e6eSAmir Ayupov asm("nop"); 8*d41b4e6eSAmir Ayupov asm("nop"); 9*d41b4e6eSAmir Ayupov int x = 0xBEEF; 10*d41b4e6eSAmir Ayupov if (x & 0x32) { 11*d41b4e6eSAmir Ayupov x++; 12*d41b4e6eSAmir Ayupov } else { 13*d41b4e6eSAmir Ayupov --x; 14*d41b4e6eSAmir Ayupov } 15*d41b4e6eSAmir Ayupov return x; 16*d41b4e6eSAmir Ayupov } 17*d41b4e6eSAmir Ayupov g()18*d41b4e6eSAmir Ayupovint g() { 19*d41b4e6eSAmir Ayupov return f() + 1; 20*d41b4e6eSAmir Ayupov } 21*d41b4e6eSAmir Ayupov main()22*d41b4e6eSAmir Ayupovint main() { 23*d41b4e6eSAmir Ayupov int q = g() * f(); 24*d41b4e6eSAmir Ayupov return 0; 25*d41b4e6eSAmir Ayupov } 26