This is a follow up of r302131, in which we forgot to add SemaChecking tests. Adding these tests revealed two problems which have been fixed: - added missing intrinsic __qdbl, - properly range checking ssat16 and usat16.
Details
Diff Detail
Event Timeline
Thanks for looking into this!
| include/clang/Basic/BuiltinsARM.def | ||
|---|---|---|
| 39 | Do we now need a codegen tests for this one? | |
| test/Sema/builtins-arm.c | ||
| 161 | Interesting that this doesn't give an error? | |
| 236 | Can / should we warn the user when using signed arguments? Looks like I missed the unsigned qualifiers in the original patch. | |
| include/clang/Basic/BuiltinsARM.def | ||
|---|---|---|
| 39 | It's there already. | |
| test/Sema/builtins-arm.c | ||
| 161 | No, was just playing a little bit with "6.3.1.4 Real floating and integer" conversions here: "When a finite value of real floating type is converted to an integer type other than_Bool, the fractional part is discarded ... " | |
| 236 | Similarly, was playing a little bit with implicit conversions here: -1 is converted to unsigned. So, it's ok. | |
Do we now need a codegen tests for this one?