J'essaie de compiler une bibliothèque C 64 bits en utilisant gcc-4.9.1.
Lors de la compilation avec -O2
, j'obtiens l'erreur suivante à différents endroits. -O0
la compilation fonctionne bien.Erreur GCC: les registres étendus n'ont pas de moitiés élevées
Error:
error: extended registers have no high halves
Toute idée de la raison pour laquelle ce message d'erreur arrive et comment le réparer. Le numéro de ligne auquel il pointe est la fin de la fonction.
Les options du compilateur sont:
-march=x86-64 -fno-omit-frame-pointer -m64 -Wno-pointer-sign
-Wno-error=address -ggdb -gdwarf-2 -g2 -feliminate-unused-debug-types
ressemble à un bug gcc. googling: https://sourceforge.net/p/covered/bugs/171/ –
Personne ne devrait utiliser '-fno-omit-frame-pointer', les directives CFI se déroulent mieux. – o11c