[PATCH] D27450: [ARM] Implement execute-only support in CodeGen

Renato Golin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 8 05:53:47 PST 2016


rengolin added inline comments.


================
Comment at: lib/Driver/Tools.cpp:1145
+    if (A->getOption().matches(options::OPT_mexecute_only)) {
+        if (getARMSubArchVersionNumber(Triple) < 7)
+            D.Diag(diag::err_target_unsupported_execute_only) << Triple.getArchName();
----------------
In theory, ARMv6T2+ supports it. I just want to make sure we're blocking it for a reason.


================
Comment at: lib/Driver/Tools.cpp:1149
+            Features.push_back("+execute-only");
+    } else
+      Features.push_back("-execute-only");
----------------
Please, add curly brackets, for clarity.


================
Comment at: test/Driver/arm-execute-only.c:63
+// CHECK-EXECUTE-ONLY: "-target-feature" "+execute-only"
+// CHECK-NO-EXECUTE-ONLY-NOT: "-target-feature" "+long-calls"
+// CHECK-EXECUTE-ONLY-NOT-SUPPORTED: error: execute only is not supported for the thumbv6m sub-architecture
----------------
Why not long-calls? Where is this being disabled / guaranteed?


https://reviews.llvm.org/D27450





More information about the llvm-commits mailing list