Function Pass - Control Flow with uses-iterator

Hey there,
i have a BasicBlock and in this BB i am going over it finding out the “uses” of each instruction to find out the dataflow, but how do i find out the control flow?
or like how do i know that the next load function loads from a previous store function - i cant find this out with the uses iterator because of the SSA form.

  1. %In2 = alloca float, align 4 (uses: instr. 12 and 13)

  2. store % float %5, float* In2 (uses: nothing)
  3. %6 = load float* %In2 (uses : …)

so instruction nr. 12 should tell me that its being used in 13.
Is this possible?
Thank you

Take a look at llvm/Analysis/MemoryDependenceAnalysis.h ; it can do
computations similar to what you're looking for.