Add codegen support for vctp{8,16,32}.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
Should be fine so long as they are not loading or storing anything (or can get it to not load or store anything!)
lib/Target/ARM/ARMInstrMVE.td | ||
---|---|---|
3946 ↗ | (On Diff #219307) | Nitpicking: Indent! |
test/CodeGen/Thumb2/mve-vctp.ll | ||
1 ↗ | (On Diff #219307) | Might as well add -verify-machineinstrs. Should the triple be in full (-none-eabi)? I'm not sure it matters a lot, but may default to linux otherwise. Also I would just run the update script on a file this size. |
24 ↗ | (On Diff #219307) | It's probably best to use the <4 x i1> as opposed to returning it (in a vselect or something). I'm not sure if the calling convention for a v4i1 is super very well defined. It's not defined from C, so only comes up in llvm test and if we can just sidestep that problem... |
LGTM
test/CodeGen/Thumb2/mve-vctp.ll | ||
---|---|---|
14 ↗ | (On Diff #219320) | If you add arm_aapcs_vfpcc, you can pass the <16 x i8> vectors sanely are args/return values, if you want to remove the extra vldrs and vstrs. |