[PATCH] D128059: [Clang] Add a warning on invalid UTF-8 in comments.

Corentin Jabot via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 22 13:01:54 PDT 2022


cor3ntin added inline comments.


================
Comment at: clang/lib/Lex/Lexer.cpp:2717
+        __m128i Bytes =
+            _mm_loadu_si128(reinterpret_cast<const __m128i *>(CurPtr));
+        int Mask = _mm_movemask_epi8(Bytes);
----------------
aaron.ballman wrote:
> aaron.ballman wrote:
> > cor3ntin wrote:
> > > This crashes when using `_mm_load_si128` which suprises me because `CurPtr` is supposedly aligned on a 16 bytes boundary here. Any idea?
> > Wait, did you verify that `CurPtr` really is on a 16-byte boundary, or are you thinking it should be on such a boundary? (I don't see any alignment markings on the parameter, so I'd assume it's aligned as any other pointer.)
> Derp, I missed that the loop above is manually aligning the pointer.
> 
> I'm not certain what's going on here with your crash...
Just above, i do
```
while (C != '/' && ((intptr_t)CurPtr & 0x0F) != 0) {
        if (!isASCII(C)) {
          CurPtr--;
          break;
        }
```

Derp indeed (the `CurPtr--; break` is the culprit, fix shortly)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128059/new/

https://reviews.llvm.org/D128059



More information about the llvm-commits mailing list