tensorflowでplaceholderを使用するとき、feed_dictでfeedする際にその変数が適用されるタイミングというのは、placeholderが宣言されている時点でfeedされるのでしょうか?
それとも、placeholderで宣言された変数が式として使われる時でしょうか?
言葉で説明するのが難しいので下に例を書かせていただきます。

import tensorflow as tf

x = tf.placeholder(dtype=tf.float32, shape=[2, 2], name='tf_x')    ←①
y = tf.placeholder(dtype=tf.float32, shape=[2, 2], name='tf_y')

#// 別のコードを挟む //

add = tf.add(x, y, name='add_op')     ←②

g = tf.Graph()
with tf.Session(graph=g) as sess:
    feed = {'tf_x:0' : 4,
            'tf_y:0' : 5}
    result = sess.run('add_op:0', feed_dict=feed)    

この場合、①と②のどちらの時点で変数がfeedされるのでしょうか?
それとも、そもそもtensorflowの計算グラフの概念の考え方が違いますでしょうか?