LLString returns the LLVM syntax representation of the instruction. 'mul' OverflowFlags=OverflowFlag* X=TypeValue ',' Y=Value Metadata=(',' MetadataAttachment)+?
()
| 313 | // |
| 314 | // 'mul' OverflowFlags=OverflowFlag* X=TypeValue ',' Y=Value Metadata=(',' MetadataAttachment)+? |
| 315 | func (inst *InstMul) LLString() string { |
| 316 | buf := &strings.Builder{} |
| 317 | fmt.Fprintf(buf, "%s = ", inst.Ident()) |
| 318 | buf.WriteString("mul") |
| 319 | for _, flag := range inst.OverflowFlags { |
| 320 | fmt.Fprintf(buf, " %s", flag) |
| 321 | } |
| 322 | fmt.Fprintf(buf, " %s, %s", inst.X, inst.Y.Ident()) |
| 323 | for _, md := range inst.Metadata { |
| 324 | fmt.Fprintf(buf, ", %s", md) |
| 325 | } |
| 326 | return buf.String() |
| 327 | } |
| 328 | |
| 329 | // Operands returns a mutable list of operands of the given instruction. |
| 330 | func (inst *InstMul) Operands() []*value.Value { |