[PATCH] D50371: Split-stack support for cross-linking shared-libraries.

George Rimar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 7 00:57:47 PDT 2018


grimar added a comment.

- x86-64-split-stack-prologue-adjust-success.s differs only in a white space. Please revert.
- It feels that x86-64-split-stack-prologue-adjust-shared.s can be simpler. Since you are testing the call of function from a shared library, I would expect one main file .s and one dso file with a single call perhaps. Can it be done in that way?



================
Comment at: ELF/InputSection.cpp:920
+      }
+    }
 
----------------
You do not need curly braces here:

```
    if (Defined *D = dyn_cast<Defined>(Rel.Sym))
      if (InputSection *IS = cast_or_null<InputSection>(D->Section))
        if (!IS || IS->getFile<ELFT>()->SplitStack)
          continue;
```


================
Comment at: test/ELF/x86-64-split-stack-prologue-adjust-shared.s:19
+1:
+	# Various and duplicate calls to ensure every code path is taken.
+	callq \function_to_call
----------------
Since this test case is new, I wonder if it really needs the duplicated and/or various calls,
I think this part was copy pasted and probably is excessive.


================
Comment at: test/ELF/x86-64-split-stack-prologue-adjust-shared.s:29
+
+# For a cross .so call, make sure ldd produced the conservative call to __morestack_non_split.
+# CHECK: prologue1_calls_split:
----------------
ldd -> lld


Repository:
  rLLD LLVM Linker

https://reviews.llvm.org/D50371





More information about the llvm-commits mailing list