diff --git a/src/nouveau/compiler/nak/sm120_instr_latencies.rs b/src/nouveau/compiler/nak/sm120_instr_latencies.rs index 2a275ca596b..2155689f7a9 100644 --- a/src/nouveau/compiler/nak/sm120_instr_latencies.rs +++ b/src/nouveau/compiler/nak/sm120_instr_latencies.rs @@ -250,6 +250,13 @@ fn op_ureg_latency( Op::IMad64(_) => coupled, Op::ISetP(_) => coupled, + Op::ALd(_) + | Op::ASt(_) + | Op::Ld(_) + | Op::Ldsm(_) + | Op::St(_) + | Op::Atom(_) => decoupled, + Op::SuLd(_) | Op::SuSt(_) | Op::SuAtom(_) => decoupled, Op::Ldc(_) => { if uniform_op { ToUr diff --git a/src/nouveau/compiler/nak/sm75_instr_latencies.rs b/src/nouveau/compiler/nak/sm75_instr_latencies.rs index fd0f5dbbca3..8f7642acb7b 100644 --- a/src/nouveau/compiler/nak/sm75_instr_latencies.rs +++ b/src/nouveau/compiler/nak/sm75_instr_latencies.rs @@ -926,6 +926,13 @@ impl URegLatencySM75 { Op::IMad64(_) => vcoupled, Op::ISetP(_) => vcoupled, + Op::ALd(_) + | Op::ASt(_) + | Op::Ld(_) + | Op::Ldsm(_) + | Op::St(_) + | Op::Atom(_) => vdecoupled, + Op::SuLd(_) | Op::SuSt(_) | Op::SuAtom(_) => vdecoupled, Op::Ldc(_) => { if uniform_op { Uldc diff --git a/src/nouveau/compiler/nak/sm80_instr_latencies.rs b/src/nouveau/compiler/nak/sm80_instr_latencies.rs index 26a3449b1b6..da3e2ccbf9b 100644 --- a/src/nouveau/compiler/nak/sm80_instr_latencies.rs +++ b/src/nouveau/compiler/nak/sm80_instr_latencies.rs @@ -1082,6 +1082,13 @@ impl URegLatencySM80 { Op::IMad64(_) => vcoupled, Op::ISetP(_) => vcoupled, + Op::ALd(_) + | Op::ASt(_) + | Op::Ld(_) + | Op::Ldsm(_) + | Op::St(_) + | Op::Atom(_) => vdecoupled, + Op::SuLd(_) | Op::SuSt(_) | Op::SuAtom(_) => vdecoupled, Op::Ldc(_) => { if uniform_op { Uldc