Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-72078

Add jmpNotNothing vm instruction

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Query Execution
    • Fully Compatible
    • QE 2023-01-09, QE 2023-01-23, QE 2023-02-06
    • 3

              // For now:
              //   lhs
              //   if peek() is nothing then goto nothingCase
              // existsCase:
              //   goto done
              // nothingCase:
              //   pop   // drop lhs
              //   rhs
              // done:        
              
              // TODO if we had a jmpNotNothing (exactly like jmpNothing but with the condition reversed)
              // we could avoid jumping over a jump here:
              //   lhs
              //   if peek() is not nothing then goto done
              //   pop   // drop lhs
              //   rhs
              // done: 

      Add jmpNotNothing vm instruction can avoid a jmp instruction for fillEmpty

            Assignee:
            rui.liu@mongodb.com Rui Liu
            Reporter:
            zixuan.zhuang@mongodb.com Zixuan Zhuang
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: