Disclaimer, this is phreakuency's post continued.
I tried to write up a simple vector add. Micah suggested UAV's, but I want to know how to do math without UAV's.
I know its a pain, but if anyone gets a chance to take a look at it, the code is here. It is the entire main, so I didn't want to clutter the thread.
StreamKernelAnalyzer will usually tell you where errors are:
sample_resource(0)_sampler(0) r0, v0.x0000 should be
sample_resource(0)_sampler(0) r0, v0.x000
as there are only 4 components per register.