.syntax unified - VCMP immediate still requires #

Bug #1641333 reported by Dan Lewis
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
GNU Arm Embedded Toolchain
Fix Released
Undecided
Unassigned

Bug Description

The assembler directive, ".syntax unified" allows immediate constants to be written without a leading "#". However, I've found one exception:

VCMP.F32 S0,0.0

which causes a syntax error, while adding the "#" eliminates the error:

VCMP.F32 S0,#0.0

This apparently does not affect ALL of the floating-point instructions, since the VMOV immediates work fine without the leading "#":

VMOV S0,0.0

Revision history for this message
Thomas Preud'homme (thomas-preudhomme) wrote :

Hi Dan,

The # sign is mandatory for immediate constants. The fact that the assembler is more lax in some cases is a bug and should not be relied upon.

Best regards.

Changed in gcc-arm-embedded:
status: New → Invalid
Revision history for this message
Dan Lewis (danielwlewis) wrote :

Thomas,

It's not a matter of being lax. It's permitted by .syntax unified:

https://sourceware.org/binutils/docs/as/ARM_002dInstruction_002dSet.html#ARM_002dInstruction_002dSet

Best,

Dan

Revision history for this message
Carlos Antunes (cmantunes) wrote :

Thomas,

With all due respect, I believe you are wrong as shown in the link provided by Dan.

Carlos

Changed in gcc-arm-embedded:
status: Invalid → New
Revision history for this message
Thomas Preud'homme (thomas-preudhomme) wrote :

My apologize. I was checking the ARM Architecture Reference Manual. Indeed the documentation does allow it.

Revision history for this message
Dan Lewis (danielwlewis) wrote :

No problem. :-)

Have a nice day!

Dan

Changed in gcc-arm-embedded:
status: New → Fix Committed
milestone: none → 6-2017-q1-update
Changed in gcc-arm-embedded:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.