Module: gas-preprocessor Branch: master Commit: d09971fad329d32df19f5bbafe88cf2f0ed04ed7
Author: Martin Storsjo <mar...@martin.st> Committer: Martin Storsjo <mar...@martin.st> Date: Wed Oct 2 11:51:45 2019 +0300 Strip out "it" instructions from armasm 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). [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..066db33 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 them out. + $line =~ s/^\s*it[te]*\s+/$comm$&/; } if ($as_type eq "armasm" and $arch eq "aarch64") { # Convert "b.eq" into "beq" _______________________________________________ libav-commits mailing list libav-commits@libav.org https://lists.libav.org/mailman/listinfo/libav-commits