tree 20ab2ec0e1ec3205ab6379c89201188436f408e6
parent 7afbffb5c2e40edd6c2b3164f1dc4faf90d7d332
author Losy001 <64610343+Losy001@users.noreply.github.com> 1745683452 +0200
committer GitHub <noreply@github.com> 1745683452 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJoDQP8CRC1aQ7uu5UhlAAAjLoQAAEc6jzrrH03bLaES7euj2Tl
 tE8yAl47A9dMgken4l9jsG5yQ8azrhPLzj179BFParUs/OcOU6GV4uH+BLV2wyYd
 nuMCBEdQ2qp2Ucq6Kqo8CxuVV95OyGulxaV/2BS7tMAAn++WeTWEAxp1H/ASmYe2
 v/LGNHSs9wyvtBGPTC44ODGsbIkWk14pyUHZur+DAKuSZFLBg1Ziy6iWVBcelMGH
 xcW4MTGMfxMt09EXqgQXCgQxeKiN/RmbYSFC21fCHgey7I8fQNS6XpCLoMuCelgQ
 8SPV3YY1wiCljZKPs6LPQpdQMfdcHNlAalcQFSt0Et7z6Gj64RUrhCDUufSSCKbs
 MbKGH8oFeik+LouyWC+sMdmcfrIg/+VIfBD+43iYtEjhXEuYjtK7PYRujuuDqe+u
 aOrSg92A33Ve4MxUTxmJq/XufZAU8EJv7Y9tmSYxZpMDixQSYJkluFKoXl4PcHHT
 C4FOnsokb4x9KdTByR84VVOKJEaZU1YxzRp5rErLiwqUhwHj65ETSkOBKG5oXtKv
 rA953OrDT/BtPn9y//XEnID8BylG/Hhr+w2o3Y+2IwaNORzkKXfQKKK6gY+hxIuT
 I/OaqXLUqCvjgUs4jaCJjMX/BRi28UZW0oXuc3+DE6iSMRO8CjuxDQnmLsx72djN
 KSZu+XE7V0yrJe4zCn8g
 =Z32/
 -----END PGP SIGNATURE-----
 

[Clang][MicrosoftMangle] Implement mangling for ConstantMatrixType (#134930)

This pull request implements mangling for ConstantMatrixType, allowing
matrices to be used on Windows.

Related issues: #53158, #127127

This example code:
```cpp
#include <typeinfo>
#include <stdio.h>

typedef float Matrix4 __attribute__((matrix_type(4, 4)));

int main()
{
  printf("%s\n", typeid(Matrix4).name());
}
```
Outputs this:
```
struct __clang::__matrix<float,4,4>
```