This reapplies commit 984e33548cde2b9869d16a60b15383c494470386 (#6628) that was reverted in commit 79e3c58a2ba545c5635d23f1d8060e2a9aa4c8f5 (#6633).
This also reapplies commit ef572627cab469b830d08d7be22f1de9d581e8da (#6629) that was reverted in commit c244df14f1695b4e171b594cf58a3f47dff91f8a (6634).
This reformatting patch (#6629) was added to this patch to simplify integration with google source base.
Fix having label "parent" multiply defined by replacing it with a "local label": Ref: https://sourceware.org/binutils/docs-2.42/as/Symbol-Names.html
The multiple definition is caused by make_clone3_syscall being inlined into create_thread_clone3.
Tested by running the following before/after the patch:
cd build && \ clang \ -I../dynamorio/core/drlibc \ -I../dynamorio/core/lib \ -I../dynamorio/suite/tests \ -I. \ -Iinclude \ -O1 \ -c ../dynamorio/suite/tests/linux/clone.c \ -o clone.o
This reapplies commit 984e33548cde2b9869d16a60b15383c494470386 (#6628) that was reverted in commit 79e3c58a2ba545c5635d23f1d8060e2a9aa4c8f5 (#6633).
This also reapplies commit ef572627cab469b830d08d7be22f1de9d581e8da (#6629) that was reverted in commit c244df14f1695b4e171b594cf58a3f47dff91f8a (6634). This reformatting patch (#6629) was added to this patch to simplify integration with google source base.
Fixes #6627