https://sourceware.org/bugzilla/show_bug.cgi?id=28436
Bug ID: 28436 Summary: ARM: too few registers allowed for vpush/vpop with single precision registers Product: binutils Version: 2.36.1 Status: UNCONFIRMED Severity: critical Priority: P2 Component: gas Assignee: unassigned at sourceware dot org Reporter: markus.klein at sma dot de Target Milestone: --- Created attachment 13717 --> https://sourceware.org/bugzilla/attachment.cgi?id=13717&action=edit vpush and vpop with S registers vpush and vpop with S registers vpush and vpop checks that no more than 16 registers are given for these instructions. Only for D registers this limit is correct, for S registers 32 registers are allowed. Attached test file. as -march=armv7-a -mfpu=neon vpushExample.S && objdump a.out should allow the following instructions vpush {s0-s31} // -> false error, is a valid command vpush {s0-s15} // OK vpop {s0-s15} // OK vpop {s0-s31} // -> false error, is a valid command but returns the following error: register list must contain at least 1 and at most 16 registers -- `vpush {s0-s31} register list must contain at least 1 and at most 16 registers -- `vpop {s0-s31} This behavior was introduced with Bug 20429 -- You are receiving this mail because: You are on the CC list for the bug.