Yeah I don't know, that is why I am asking.
Phynaz says VLIW5 can't handle general purpose code. VLIW obviously can handle general purpose code just fine, in the case of Itanium. Is there some massive technical difference between the VLIW used for Radeon cards and the VLIW used for Itanium?
Also, I'd like to point out lack of something doesn't prove it's not possible and inefficiency isn't the same as incapability.
GPU might be terrible candidates for running the code that makes an email server work, which may be why no compiler would ever compile code that uses them, but that doesn't prove they can't handle such code. CPUs are an order of magnitude slower are breaking encryption compared to GPUs, so any sane compiler will compile code that uses the GPU power to break encryption- does that mean CPUs can't be used for general purpose programming, since this specific example is typically done on a GPU instead? Or, duh, graphics. CPU could be used to "accelerate" 3d graphics, but they are so slow and inefficent compared to GPU they aren't used. Does that make a CPU any less of a general purpose device, since it's not used for the purpose of accelerating 3d graphics?