So I've never really liked this way of adding the modifiers to the returned code.

1. If the kernel already has the modifier, I think it's wrong.
2. If the kernel string contains more than one actual kernel (this is allowed I think), then only the first one gets the modifier.

Would it be possible for the kernel modifiers to appear from the IR code generation step?