https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122041
--- Comment #4 from Petr Sumbera <sumbera at volny dot cz> --- While looking at objdump output I think Solaris mdb does better job. $ echo "crc32_update_no_xor::dis" | mdb crc-gcc.o crc32_update_no_xor: save %sp, -0xc0, %sp crc32_update_no_xor+4: and %i2, -0x8, %i2 crc32_update_no_xor+8: cxbe %i2, 0x0, +0x160 <crc32_update_no_xor+0x168> crc32_update_no_xor+0xc: sethi %hi(0x0), %l3 crc32_update_no_xor+0x10: mov 0xff, %i5 crc32_update_no_xor+0x14: or %l3, 0x0, %g1 crc32_update_no_xor+0x18: sllx %i5, 0x30, %l2 crc32_update_no_xor+0x1c: sllx %g1, 0xc, %g2 crc32_update_no_xor+0x20: sllx %i5, 0x28, %l1 crc32_update_no_xor+0x24: sllx %i5, 0x20, %l0 crc32_update_no_xor+0x28: clr %l4 crc32_update_no_xor+0x2c: or %g2, 0x0, %l3 crc32_update_no_xor+0x30: sethi %hi(0xff000000), %i3 crc32_update_no_xor+0x34: sethi %hi(0xff0000), %i4 crc32_update_no_xor+0x38: sllx %i5, 0x8, %i5 crc32_update_no_xor+0x3c: add %i1, %l4, %o1 crc32_update_no_xor+0x40: mov 0x8, %o2 crc32_update_no_xor+0x44: add %fp, 0x7f7, %o0 crc32_update_no_xor+0x48: call +0x0 <crc32_update_no_xor+0x48> crc32_update_no_xor+0x4c: add %l4, 0x8, %l4 crc32_update_no_xor+0x50: ldx [%fp + 0x7f7], %g5 crc32_update_no_xor+0x54: srlx %g5, 0x38, %g4 crc32_update_no_xor+0x58: sllx %g5, 0x28, %g3 crc32_update_no_xor+0x5c: sllx %g5, 0x38, %g1 crc32_update_no_xor+0x60: and %g3, %l2, %o0 crc32_update_no_xor+0x64: sllx %g5, 0x18, %o1 crc32_update_no_xor+0x68: or %g1, %g4, %g1 crc32_update_no_xor+0x6c: and %o1, %l1, %o2 crc32_update_no_xor+0x70: sllx %g5, 0x8, %o3 crc32_update_no_xor+0x74: or %g1, %o0, %g1 crc32_update_no_xor+0x78: and %o3, %l0, %o4 crc32_update_no_xor+0x7c: srlx %g5, 0x8, %o5 crc32_update_no_xor+0x80: or %g1, %o2, %g1 crc32_update_no_xor+0x84: and %o5, %i3, %g2 crc32_update_no_xor+0x88: srlx %g5, 0x18, %g4 crc32_update_no_xor+0x8c: or %g1, %o4, %g1 crc32_update_no_xor+0x90: and %g4, %i4, %g3 crc32_update_no_xor+0x94: or %g1, %g2, %g1 crc32_update_no_xor+0x98: srlx %g5, 0x28, %g5 crc32_update_no_xor+0x9c: and %g5, %i5, %o0 crc32_update_no_xor+0xa0: or %g1, %g3, %g1 crc32_update_no_xor+0xa4: or %g1, %o0, %g1 crc32_update_no_xor+0xa8: xor %g1, %i0, %i0 crc32_update_no_xor+0xac: and %i0, 0xff, %o1 crc32_update_no_xor+0xb0: srlx %i0, 0x30, %o2 crc32_update_no_xor+0xb4: add %o1, 0x700, %o3 crc32_update_no_xor+0xb8: and %o2, 0xff, %o4 crc32_update_no_xor+0xbc: srlx %i0, 0x28, %o5 crc32_update_no_xor+0xc0: srlx %i0, 0x38, %g1 crc32_update_no_xor+0xc4: sllx %o3, 0x2, %g3 crc32_update_no_xor+0xc8: add %o4, 0x100, %g2 crc32_update_no_xor+0xcc: and %o5, 0xff, %g5 crc32_update_no_xor+0xd0: srlx %i0, 0x20, %g4 crc32_update_no_xor+0xd4: sllx %g1, 0x2, %g1 crc32_update_no_xor+0xd8: sllx %g2, 0x2, %o0 crc32_update_no_xor+0xdc: ld [%l3 + %g3], %o2 crc32_update_no_xor+0xe0: srlx %i0, 0x18, %o4 crc32_update_no_xor+0xe4: add %g5, 0x200, %o1 crc32_update_no_xor+0xe8: and %g4, 0xff, %o3 crc32_update_no_xor+0xec: ld [%l3 + %g1], %g1 crc32_update_no_xor+0xf0: sllx %o1, 0x2, %g5 crc32_update_no_xor+0xf4: ld [%l3 + %o0], %o5 crc32_update_no_xor+0xf8: add %o3, 0x300, %g4 crc32_update_no_xor+0xfc: and %o4, 0xff, %g3 crc32_update_no_xor+0x100: srlx %i0, 0x10, %g2 crc32_update_no_xor+0x104: sllx %g4, 0x2, %o0 crc32_update_no_xor+0x108: add %g3, 0x400, %o1 crc32_update_no_xor+0x10c: and %g2, 0xff, %o3 crc32_update_no_xor+0x110: srlx %i0, 0x8, %i0 crc32_update_no_xor+0x114: ld [%l3 + %g5], %o7 crc32_update_no_xor+0x118: sllx %o1, 0x2, %o4 crc32_update_no_xor+0x11c: ld [%l3 + %o0], %g5 crc32_update_no_xor+0x120: add %o3, 0x500, %g4 crc32_update_no_xor+0x124: and %i0, 0xff, %g3 crc32_update_no_xor+0x128: sllx %g4, 0x2, %g2 crc32_update_no_xor+0x12c: ld [%l3 + %o4], %o0 crc32_update_no_xor+0x130: add %g3, 0x600, %o1 crc32_update_no_xor+0x134: ld [%l3 + %g2], %o3 crc32_update_no_xor+0x138: xor %g1, %o2, %g1 crc32_update_no_xor+0x13c: sllx %o1, 0x2, %o2 crc32_update_no_xor+0x140: xor %g1, %o5, %g1 crc32_update_no_xor+0x144: ld [%l3 + %o2], %o5 crc32_update_no_xor+0x148: xor %g1, %o7, %o7 crc32_update_no_xor+0x14c: xor %o7, %g5, %i0 crc32_update_no_xor+0x150: xor %i0, %o0, %o4 crc32_update_no_xor+0x154: xor %o4, %o3, %g5 crc32_update_no_xor+0x158: xor %g5, %o5, %g4 crc32_update_no_xor+0x15c: srl %g4, 0x0, %i0 crc32_update_no_xor+0x160: cxbgu %i2, %l4, -0x124 <crc32_update_no_xor+0x3c> crc32_update_no_xor+0x164: nop crc32_update_no_xor+0x168: return %i7 + 0x8 crc32_update_no_xor+0x16c: nop