This is baseline test assertions for before applying D68982
I'm not sure if there's a difference, but I usually specify the triple in the RUN line, and I don't explicitly set a datalayout.
Here and below: remove unnecessary "dso_local"
Is it intentional that all tests use the i16 type? Would it be beneficial/increase test coverage to include other common types like i32/i64?
I think there's no difference. I just followed the pattern found in other tests of the same target such as the shifts.ll. Also, the form that I used is what clang generates, so I thought it would be more representative. But I can replace it if considered not suitable.
I'm unsure about what dsl_local means, this was generated by clang, but I'll remove it if not necessary.
Yes, the i16 type is intentional. The target does not natively support larger types, so larger types are expanded into operations with register pairs requiring additional transformations, or are custom lowered, which confuse the purposes of this patch.