diff options
author | John McCall <rjmccall@apple.com> | 2010-11-14 08:17:51 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-11-14 08:17:51 +0000 |
commit | d764625448caf3b885b37be6bfa88f93f16cbb3c (patch) | |
tree | 2b9c0721eb6616f64567cddfd829eff93609f298 /clang/lib/CodeGen/CGExprComplex.cpp | |
parent | 2536851543ed3fd4ac60631488a2f7df61829669 (diff) | |
download | bcm5719-llvm-d764625448caf3b885b37be6bfa88f93f16cbb3c.tar.gz bcm5719-llvm-d764625448caf3b885b37be6bfa88f93f16cbb3c.zip |
Add a few more complex-related cast kinds that arise due to arbitrary
implicit conversions; the last batch was specific to promotions.
I think this is the full set we need. I do think dividing the cast
kinds into floating and integral is probably a good idea.
Annotate a *lot* more C casts with useful cast kinds.
llvm-svn: 119036
Diffstat (limited to 'clang/lib/CodeGen/CGExprComplex.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGExprComplex.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGExprComplex.cpp b/clang/lib/CodeGen/CGExprComplex.cpp index 637441f4e19..ad0786fd9b0 100644 --- a/clang/lib/CodeGen/CGExprComplex.cpp +++ b/clang/lib/CodeGen/CGExprComplex.cpp @@ -274,6 +274,8 @@ ComplexPairTy ComplexExprEmitter::EmitLoadOfComplex(llvm::Value *SrcPtr, bool isVolatile) { llvm::Value *Real=0, *Imag=0; + // FIXME: we should really not be suppressing volatile loads. + if (!IgnoreReal) { llvm::Value *RealP = Builder.CreateStructGEP(SrcPtr, 0, SrcPtr->getName() + ".realp"); |