Lines Matching defs:ty
45 def get_ptx_reg(ty):
55 return reg[ty]
58 def get_ptx_vec_reg(vec, ty):
64 return vec_reg[vec].format(reg=get_ptx_reg(ty))
67 def get_llvm_type(ty):
68 if ty[0] in ("b", "s", "u"):
69 return "i" + ty[1:]
70 if ty == "f16":
72 if ty == "f32":
74 raise RuntimeError("invalid type: " + ty)
78 ty = get_llvm_type(ty_ptx)
81 if ty == "i8":
82 ty = "i16"
85 "": "{ty}",
86 "v2": "{{ {ty}, {ty} }}",
87 "v4": "{{ {ty}, {ty}, {ty}, {ty} }}",
89 return vec_ty[vec].format(ty=ty)
93 ty = get_llvm_type(ty_ptx)
96 if ty == "i8":
97 ty = "i16"
100 "": "{ty} %v1",
101 "v2": "{ty} %v1, {ty} %v2",
102 "v4": "{ty} %v1, {ty} %v2, {ty} %v3, {ty} %v4",
104 return value[vec].format(ty=ty)
108 ty = get_llvm_type(ty_ptx)
111 if ty == "i8":
112 ty = "i16"
114 value = {"": "{ty}", "v2": "{ty}, {ty}", "v4": "{ty}, {ty}, {ty}, {ty}"}
115 return value[vec].format(ty=ty)