I was looking at the header of some elf files and noticed something odd:
ELF Header: Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 Class: ELF32 Data: 2's complement, big endian Version: 1 (current) OS/ABI: UNIX - System V ABI Version: 0 Type: EXEC (Executable file) Machine: MIPS R3000 Version: 0x1 ... Flags: 0x80000027, noreorder, pic, cpic, abi2, mips64r2 ...
Why is it labeled as ELF32 but have a mips64r2 flag? What does that indicate? Does it mean that the file was compiled as a 32 bit program intended to be run on a 64 bit processor?
Also, if it is running on mips64r2, why is the machine labeled as MIPS r3000?
If I wanted to run this with qemu, what type of environment would I need? mips64 r2? mips r3000?