diff options
author | JF Bastien <jfb@chromium.org> | 2013-07-30 16:38:26 -0700 |
---|---|---|
committer | JF Bastien <jfb@chromium.org> | 2013-07-30 16:38:26 -0700 |
commit | f75fd0a9f95109b9cb13a74aad6dcc98c3d5d625 (patch) | |
tree | 652c465d76008ef58f5c8d55827050a6f1d875e1 /include | |
parent | 423b3bb89c78e96c59843aa7c6e55d01bde174d1 (diff) |
Rewrite ``asm("":::"memory")`` to ``fence seq_cst``
This is often used as a compiler barrier and should "just work" in user code.
BUG= https://code.google.com/p/nativeclient/issues/detail?id=2345
R=eliben@chromium.org
TEST= (cd ./pnacl/build/llvm_x86_64 && ninja check-all)
Review URL: https://codereview.chromium.org/21178002
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/InitializePasses.h | 1 | ||||
-rw-r--r-- | include/llvm/Transforms/NaCl.h | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/include/llvm/InitializePasses.h b/include/llvm/InitializePasses.h index ee40f495b3..8352868d89 100644 --- a/include/llvm/InitializePasses.h +++ b/include/llvm/InitializePasses.h @@ -298,6 +298,7 @@ void initializePromoteIntegersPass(PassRegistry&); void initializeReplacePtrsWithIntsPass(PassRegistry&); void initializeResolveAliasesPass(PassRegistry&); void initializeResolvePNaClIntrinsicsPass(PassRegistry&); +void initializeRewriteAsmDirectivesPass(PassRegistry&); void initializeRewriteAtomicsPass(PassRegistry&); void initializeRewriteLLVMIntrinsicsPass(PassRegistry&); void initializeRewritePNaClLibraryCallsPass(PassRegistry&); diff --git a/include/llvm/Transforms/NaCl.h b/include/llvm/Transforms/NaCl.h index ec1a54aaa8..3cf306499e 100644 --- a/include/llvm/Transforms/NaCl.h +++ b/include/llvm/Transforms/NaCl.h @@ -29,6 +29,7 @@ FunctionPass *createExpandStructRegsPass(); FunctionPass *createInsertDivideCheckPass(); FunctionPass *createPromoteIntegersPass(); FunctionPass *createResolvePNaClIntrinsicsPass(); +FunctionPass *createRewriteAsmDirectivesPass(); ModulePass *createAddPNaClExternalDeclsPass(); ModulePass *createCanonicalizeMemIntrinsicsPass(); ModulePass *createExpandArithWithOverflowPass(); |