Constant propagation behavior

Hello,

I am wondering why the constant propagation pass for http://paste.ofcode.org/6upqApjEAy5WYjnFgjQxvj does not propagate the 4660 integer (line 57 after optim).

If I understand correctly, the lines:

store i64 4660, i64* %I

[…]

%Ldq = load i64* %I

[…]

store i64 %Ldq, i64* @rbp

May be transformed to :

store i64 4660, i64* @rbp

But I am unable to find the correct passes to apply. I found some related post on the mailing list (http://lists.cs.uiuc.edu/pipermail/llvmdev/2005-January/003232.html) but both gcse and load-vn have disappeared into the latest LLVM. I tried to analyze the alias analysis with -count-aa, but I have no idea how to use it to debug my problem.