Quote:
Originally Posted by alpine9000
Another thing to try is -O2 but with -fbbb=-
This enables the default GCC optimisations but disables the new bebbo optimisations. If it works with the above but fails with -O2, there is a good chance you have discovered a bug in the bebbo optimisations.
If that is the case, you can then narrow it down by enabling/disabling each bebbo optimisation with
-fbbb=abcefilmprsz until you discover which letter is causing the issue.
|
My usual approach (yes, still happens then and now, prayers do not work out) is
- build all files in folder X
- copy all .o files into folder A
- build all files with -fbbb=- in folder X
- copy all .o files int folder B
now link and test in folder X. With -fbbb=- it should run if not try a different -O* option until files in folders X and B do work
now do a binary search:
1. copy half of the files from A to X
2. link and test
3. if ok repeat at 1. for the remaining files in A
4. if not replace the last copied files with files from B
5. go to 1 and check only the last copied files
at the end you have one file which causes the trouble.
now try the different letters to search which one is the bad guy
start with omitting 'e' then 'r' from the list of letters.
once found the offending letter, create asm files and compare these - maybe that's my job then^^
sometimes I'm still amazed at what my optimizers can do. not bad at all for random hacking
and use the latest version: gcc version 6.4.1b 20190106170304