On Thu, 3 Oct 2019, Janne Grunau wrote:
On 2019-10-02 11:53:28 +0300, Martin Storsjö wrote:
Armasm implicitly adds it instructions as needed. In VS 2019 16.3,
there's a bug [1] in armasm making it fail to parse these it instructions
(but it can still add them implicitly just fine).
I'm not sure if it really is worth working around this issue, or just
wait for it to hopefully be fixed by the next release again.
[1]
https://developercommunity.visualstudio.com/content/problem/757709/armasm-fails-to-handle-it-instructions.html
---
gas-preprocessor.pl | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
index b6c2786..9d8fb5d 100755
--- a/gas-preprocessor.pl
+++ b/gas-preprocessor.pl
@@ -1168,6 +1168,10 @@ sub handle_serialized_line {
$line =~ s/fmxr/vmsr/;
$line =~ s/fmrx/vmrs/;
$line =~ s/fadds/vadd.f32/;
+ # Armasm in VS 2019 16.3 errors out on "it" instructions. But
+ # armasm implicitly adds the necessary it instructions anyway, so we
+ # can just filter it out.
+ $line =~ s/^\s*it[te]*\s+/$comm$&/;
}
if ($as_type eq "armasm" and $arch eq "aarch64") {
# Convert "b.eq" into "beq"
I guess ok-ish since armasm can handle implicit it instructions. Do you
have expectation when a fixed version might be released? If it's more
than a couple of weeks I'd say the workaround is worth it.
There's roughly one stable release per 3 months, and the first preview for
the next one (16.4) was already posted. In some cases, bugfixes do get
into the next release (if deemed urgent enough I guess), but otherwise
into current+2. So estimate of fix in a stable release is anywhere between
2 and 5 months maybe.
If I would have caught this in August when the first preview actually
containing the new broken armasm was out, it might have been possible to
have it fixed sooner...
// Martin
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel