From: David Y. <dav...@in...> - 2011-05-03 15:51:30
|
188.ammp is working: * runs native * builds to cil (cil32) * runs in mono (it should run in .NET as well) * builds from cil to native (gcil) * runs in cil-to-native (gcil) You must: 1) Apply the Mono.Cecil.Cil patch for long jump optimization: This benchmark was experiencing the bug that I just reported in the list as "Mono.Cecil.Cil: OptimizeBranch bug" Any way, I attached it again. Just download it and apply to your Mono.Cecil.Cil, which should be in <cli-be>/gcc-src/binutils/tools/Mono.Cecil (if you have problems to apply it, just edit the file Mono.Cecil.Cil/MethodBody.cs and add "return false;" right after the start of OptimizeBranch()) 2) Fix deprecated prototypes: This benchmark is coded in a very old fashion. Most of the prototypes are missing or they are different than the actual ones. I implemented a script to update the code: * Uncompresss 188.amp.fix_prototypes.patch.tgz into your 188.amp source folder. It contains: __autogen_prototypes.h -> the set of correct prototypes used in the program <file.c>.missing_prototypes -> a per file list of each prototype that is missing fix_prototypes.sh -> a bash script that will patch the source code (everything will be backed up before) * Run ./fix_prototypes.sh After this, your folder should contain a bunch of files like <file.c>.protos.h, and each file.c should have been modified. Now you can build everythinig (if you use the flags that I point right below) 3) Use these building flags: You must use the following flags: CFLAGS += -DSPEC_CPU2000 -DGCC4CLI -DNEWCCALL David |