diff options
author | Simon Tatham <simon.tatham@arm.com> | 2018-05-30 07:54:05 +0000 |
---|---|---|
committer | Simon Tatham <simon.tatham@arm.com> | 2018-05-30 07:54:05 +0000 |
commit | 89e31fa7fc28f68866f07dd31bc998dcb79997d7 (patch) | |
tree | 2b6d17b7507b26a69873ca757eb52a17496c9bbf /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 60e6ce415532d5f25f0c7ad682d86c3e3d83a33e (diff) | |
download | llvm-89e31fa7fc28f68866f07dd31bc998dcb79997d7.zip llvm-89e31fa7fc28f68866f07dd31bc998dcb79997d7.tar.gz llvm-89e31fa7fc28f68866f07dd31bc998dcb79997d7.tar.bz2 |
Support __iso_volatile_load8 etc on aarch64-win32.
These intrinsics are used by MSVC's header files on AArch64 Windows as
well as AArch32, so we should support them for both targets. I've
factored them out of CodeGenFunction::EmitARMBuiltinExpr into separate
functions that EmitAArch64BuiltinExpr can call as well.
Reviewers: javed.absar, mstorsjo
Reviewed By: mstorsjo
Subscribers: kristof.beyls, cfe-commits
Differential Revision: https://reviews.llvm.org/D47476
llvm-svn: 333513
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 1cd952c..56b07e5 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -3541,6 +3541,10 @@ public: SmallVectorImpl<llvm::Value *> &Ops, Address PtrOp0, Address PtrOp1, llvm::Triple::ArchType Arch); + + llvm::Value *EmitISOVolatileLoad(const CallExpr *E); + llvm::Value *EmitISOVolatileStore(const CallExpr *E); + llvm::Function *LookupNeonLLVMIntrinsic(unsigned IntrinsicID, unsigned Modifier, llvm::Type *ArgTy, const CallExpr *E); |