Open GoogleCodeExporter opened 8 years ago
This load looks like this in LLVM IR:
%1 = load atomic i8* bitcast (i64* @guard variable for foo()::x to i8*)
acquire, align 8
We'll need to append TBAA to this load in order to recognize
that this is a guard var (we can not rely on the var name).
I am on it.
Original comment by konstant...@gmail.com
on 11 Apr 2012 at 12:35
FTR:
I'll need to add something like
CGM.DecorateInstruction(LI, CGM.getTBAAInfoForGuardVariable());
to ItaniumCXXABI::EmitGuardedInit (tools/clang/lib/CodeGen/ItaniumCXXABI.cpp)
and implement getTBAAInfoForGuardVariable in CodeGenTBAA.cpp
Currently I am waiting for anther code review in the same files.
Original comment by konstant...@gmail.com
on 11 Apr 2012 at 12:53
Original issue reported on code.google.com by
dvyu...@google.com
on 2 Apr 2012 at 11:25