PR feedback

Signed-off-by: Alan Jowett <alan.jowett@microsoft.com>
diff --git a/external/bpf_conformance b/external/bpf_conformance
index b1b1c21..1ce2861 160000
--- a/external/bpf_conformance
+++ b/external/bpf_conformance
@@ -1 +1 @@
-Subproject commit b1b1c21f783ce1aa01874a8edbd761e9c48f95aa
+Subproject commit 1ce286105edf3577ef380bd8a498cfa2314d6dfa
diff --git a/external/ebpf-verifier b/external/ebpf-verifier
index b01a563..1f14b5c 160000
--- a/external/ebpf-verifier
+++ b/external/ebpf-verifier
@@ -1 +1 @@
-Subproject commit b01a5634b6e86baa0b14a097440f6cbd6542b1f3
+Subproject commit 1f14b5cc4c09a3bf934156b9d42c9c99f5fc7d21
diff --git a/vm/ubpf_instruction_valid.c b/vm/ubpf_instruction_valid.c
index 4811ba2..e5eb1a8 100644
--- a/vm/ubpf_instruction_valid.c
+++ b/vm/ubpf_instruction_valid.c
@@ -274,7 +274,7 @@
     {
         .opcode = EBPF_OP_OR64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_AND64_IMM,
@@ -284,7 +284,7 @@
     {
         .opcode = EBPF_OP_AND64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_LSH64_IMM,
@@ -294,7 +294,7 @@
     {
         .opcode = EBPF_OP_LSH64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_RSH64_IMM,
@@ -304,7 +304,7 @@
     {
         .opcode = EBPF_OP_RSH64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_NEG64,
@@ -318,7 +318,7 @@
     {
         .opcode = EBPF_OP_MOD64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_XOR64_IMM,
@@ -328,7 +328,7 @@
     {
         .opcode = EBPF_OP_XOR64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_MOV64_IMM,
@@ -338,7 +338,7 @@
     {
         .opcode = EBPF_OP_MOV64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_ARSH64_IMM,
@@ -348,7 +348,7 @@
     {
         .opcode = EBPF_OP_ARSH64_REG,
         .destination = _is_r0_through_r9,
-        .immediate = _is_32bit,
+        .source = _is_r0_through_r10,
     },
     {
         .opcode = EBPF_OP_LDXW,
@@ -714,6 +714,7 @@
         .opcode = EBPF_OP_ATOMIC_STORE,
         .destination = _is_r0_through_r10,
         .source = _is_r0_through_r10,
+        .immediate = _is_valid_atomic_alu_op,
         .offset = _is_16bit,
     },
 };