diff --git a/src/main/java/com/android/tools/r8/ir/code/ConstNumber.java b/src/main/java/com/android/tools/r8/ir/code/ConstNumber.java
index cae2002..00b983b 100644
--- a/src/main/java/com/android/tools/r8/ir/code/ConstNumber.java
+++ b/src/main/java/com/android/tools/r8/ir/code/ConstNumber.java
@@ -54,6 +54,10 @@
     return instruction.asConstNumber();
   }
 
+  public static Builder builder() {
+    return new Builder();
+  }
+
   @Override
   public int opcode() {
     return Opcodes.CONST_NUMBER;
@@ -349,4 +353,24 @@
   public void buildLir(LirBuilder<Value, ?> builder) {
     builder.addConstNumber(outType(), value);
   }
+
+  public static class Builder extends BuilderBase<Builder, ConstNumber> {
+
+    private long value;
+
+    public Builder setValue(long value) {
+      this.value = value;
+      return this;
+    }
+
+    @Override
+    public ConstNumber build() {
+      return amend(new ConstNumber(outValue, value));
+    }
+
+    @Override
+    public Builder self() {
+      return this;
+    }
+  }
 }
diff --git a/src/main/java/com/android/tools/r8/ir/code/ConstString.java b/src/main/java/com/android/tools/r8/ir/code/ConstString.java
index e2ce753..803223f 100644
--- a/src/main/java/com/android/tools/r8/ir/code/ConstString.java
+++ b/src/main/java/com/android/tools/r8/ir/code/ConstString.java
@@ -34,6 +34,10 @@
     this.value = value;
   }
 
+  public static Builder builder() {
+    return new Builder();
+  }
+
   @Override
   public int opcode() {
     return Opcodes.CONST_STRING;
@@ -185,4 +189,24 @@
   public void buildLir(LirBuilder<Value, ?> builder) {
     builder.addConstString(value);
   }
+
+  public static class Builder extends BuilderBase<Builder, ConstString> {
+
+    private DexString value;
+
+    public Builder setValue(DexString value) {
+      this.value = value;
+      return this;
+    }
+
+    @Override
+    public ConstString build() {
+      return amend(new ConstString(outValue, value));
+    }
+
+    @Override
+    public Builder self() {
+      return this;
+    }
+  }
 }
