Hi , I am working on Red hat linux 7.3. I have gcc 3.3 installed on my box. I compiled my file as gcc a.c -march=i686 -c -o a686.o objdump -f a.o shows following output a686.o: file format elf32-i386 architecture: i386, flags 0x00000011: HAS_RELOC, HAS_SYMS start address 0x00000000 This means, though I have compiled my source with march=i686 option the object file header it throughs is of i386. I confirmed the instructions output by for both i386 and i686 options. There I found the difference. This means the compiler output the i686 instructions properly with the option set. I am interested why it does not through the file header of object file of type i686. Please correct me if i am missing something.. Thanks in advance.. ..Bansidhar