diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2023-11-15 01:09:13 +0100 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2023-11-15 01:09:23 +0100 |
commit | 8dfac290a441de21a24faccca6110bc738ebf1b7 (patch) | |
tree | 8a953bfe9eeb6bb66eb3da23ec301634966e8b3d /clang/lib/CodeGen/CodeGenFunction.cpp | |
parent | a4f77f1ca3189a3dbcf11755fa76893b006e6370 (diff) | |
download | llvm-8dfac290a441de21a24faccca6110bc738ebf1b7.zip llvm-8dfac290a441de21a24faccca6110bc738ebf1b7.tar.gz llvm-8dfac290a441de21a24faccca6110bc738ebf1b7.tar.bz2 |
[CodeGen] [riscv] Remove no-op ptr-to-ptr bitcasts (NFC)
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.cpp b/clang/lib/CodeGen/CodeGenFunction.cpp index 0f2b905..64521ce 100644 --- a/clang/lib/CodeGen/CodeGenFunction.cpp +++ b/clang/lib/CodeGen/CodeGenFunction.cpp @@ -2486,10 +2486,8 @@ llvm::Value *CodeGenFunction::EmitAnnotationCall(llvm::Function *AnnotationFn, const AnnotateAttr *Attr) { SmallVector<llvm::Value *, 5> Args = { AnnotatedVal, - Builder.CreateBitCast(CGM.EmitAnnotationString(AnnotationStr), - ConstGlobalsPtrTy), - Builder.CreateBitCast(CGM.EmitAnnotationUnit(Location), - ConstGlobalsPtrTy), + CGM.EmitAnnotationString(AnnotationStr), + CGM.EmitAnnotationUnit(Location), CGM.EmitAnnotationLineNo(Location), }; if (Attr) @@ -2499,15 +2497,10 @@ llvm::Value *CodeGenFunction::EmitAnnotationCall(llvm::Function *AnnotationFn, void CodeGenFunction::EmitVarAnnotations(const VarDecl *D, llvm::Value *V) { assert(D->hasAttr<AnnotateAttr>() && "no annotate attribute"); - // FIXME We create a new bitcast for every annotation because that's what - // llvm-gcc was doing. - unsigned AS = V->getType()->getPointerAddressSpace(); - llvm::Type *I8PtrTy = Builder.getPtrTy(AS); for (const auto *I : D->specific_attrs<AnnotateAttr>()) EmitAnnotationCall(CGM.getIntrinsic(llvm::Intrinsic::var_annotation, - {I8PtrTy, CGM.ConstGlobalsPtrTy}), - Builder.CreateBitCast(V, I8PtrTy, V->getName()), - I->getAnnotation(), D->getLocation(), I); + {V->getType(), CGM.ConstGlobalsPtrTy}), + V, I->getAnnotation(), D->getLocation(), I); } Address CodeGenFunction::EmitFieldAnnotations(const FieldDecl *D, |