[PATCH] D42356: [AArch64] Implement dynamic stack probing for windows

Amara Emerson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 24 08:36:05 PST 2018


aemerson added a subscriber: qcolombet.
aemerson added a comment.

For GlobalISel we haven't had to have very target specific code in the IRTranslator for this before. @qcolombet any opinion on whether we want to include target/ABI specific code into the IRTranslator? My feeling is that we want to avoid this, the alternative I can see is to introduce a new opcode for G_DYNALLOCA and lower that at isel.



================
Comment at: lib/Target/AArch64/AArch64ISelLowering.cpp:7452
+
+  SDValue Callee = DAG.getTargetExternalSymbol("__chkstk", PtrVT, 0);
+
----------------
Unfortunately it seems we need to pass a const char* to this because of lifetime issues at codegen. Do you have any ideas on how to do this better?


================
Comment at: lib/Target/AArch64/AArch64ISelLowering.cpp:7458
+
+  Size = DAG.getNode(ISD::SRL, dl, MVT::i64, Size,
+                     DAG.getConstant(4, dl, MVT::i64));
----------------
Can you separate this out into some kind of helper for the Windows specific ABI?


Repository:
  rL LLVM

https://reviews.llvm.org/D42356





More information about the llvm-commits mailing list