gcc(pe-i386)からgcc(elf32-i386)に変えたところ、
iretのところでこけてしまいます。↓
>>PANIC<< iret: return CS selector null

gcc(elf32-i386)でコンパイル、iret付近のdisassemble.
82:61 popa
5d:61 popa
5e:89 ec mov %ebp,%esp
60:5d pop %ebp
61:cf iret
62:c9 leave
63:c3 ret

gcc(pe-i386)でコンパイル、iret付近のdisassemble.
4b:61 popa
4c:89 ec mov %ebp,%esp
4e:5d pop %ebp
4f:cf iret
50:89 ec mov %ebp,%esp
52:5d pop %ebp
53:c3 ret
54:25 78 20 00 90 and $0x90002078,%eax
59:8d b4 26 00 00 00 00 lea 0x0(%esi,1),%esi

気づくことがあればお願いします。