OS2 World Community Forum
OS/2, eCS & ArcaOS - Technical => Programming => Topic started by: R.M. Klippstein on November 07, 2015, 11:47:30 pm
-
Could somebody please explain what this GCC error is trying to tell me.
/src/Vbox/VMM/VMMSwitcher/32BitTo32Bit.asm error: phase error detected at end of assembly
thanks, klipp
-
Well, from a non-expert but quoting a few random search results:
A phase error is caused by a label in the symbol table having a address that is different after the second pass than what it was after the first pass. This is usually caused by not having an ORG statement properly defining the location of the code.
Using an undefined variable was also mentioned, but usually you get an earlier error on this.
Of course there is also the remove lines until it assembles method to try to track it down. All I've had to worry about has been 8051 assembly and at this point it is traditional for someone else to chime in and call me an idiot. Good luck :)
-
Are you sure this is a GCC (GAS) error? Usually GAS assembly files have a .S suffix and NASM etc use .asm. Of course it is not a hard and fast rule. If NASM, the usual fix is to do more passes, -O2 IIRC.
If using silent rules like too much stuff does now, set V=1 or make V=1 will display the whole command, perhaps post it
-
Hey Dave & Daniel, Thanks! Doing more passes solved it,it was NASM!
klipp