Hi,

I am trying to compile ImplantBench for MIPS on gem5 and run them in SE
mode. I am using the following toolchain setup to cross compile:

Toolchain:
1. crosstools-ng
2. march and mtune -mips1, Little Endian, soft-float, Glibc 2.9, gcc 4.3.X
3. gcc config flags: --disable-tls, --disable-threads
4. library compile flags: -msoft-float -msingle-float
5. Target Binary compiled with -static flag, compiled for linux 2.6 kernel.

I am able to run a few of the benchmarks without any problem but facing the
following error for the rest:

build/MIPS/cpu/o3/lsq_unit.hh:577: Fault LSQUnit<Impl>::read(Request*,
Request*, Request*, uint8_t*, int) [with Impl = O3CPUImpl, Fault =
RefCountingPtr<FaultBase>, uint8_t = unsigned char]: Assertion `load_inst'
failed.

I am still not very familiar with the gem5 source code so I am just
guessing this is related with cross compiling and may be usage of an
incompatible instructions? I need some help or guidance on how to track
this down.

FYI
1. I get segfaults when I compile these same programs with the latest
codesourcery mips tools using -EL and -static flags.
2. These benchmarks compile run without issue on ARM when compiled with
latest codesourcery ARM tools using -static flags.

Any feedback or help would be greatly appreciated.

Thanks.

Safwat Mostafa
Dept of ECE
University of Texas at San Antonio
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to