improved code generation for dsgesv, dsposv, zcgesv and zcposv (swork still has the wrong precision type, so it's not yet functional)