diff options
author | Jaymes Wilks <mjwilks@us.ibm.com> | 2019-02-04 14:06:56 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-03-11 17:07:52 -0500 |
commit | f5475890894b4d542f622cee27604de15b41bb4b (patch) | |
tree | c7462a5d51689fab8dfbe66dd87c6263e8e44959 /src/usr/testcore | |
parent | 676c584aaa7046d45d0c9ac3851699566d905bac (diff) | |
download | talos-hostboot-f5475890894b4d542f622cee27604de15b41bb4b.tar.gz talos-hostboot-f5475890894b4d542f622cee27604de15b41bb4b.zip |
Support thread local storage
Generally adds support to declare variables as thread_local
- Add support in HBRT start assembly to skip adjusting TLS relocations
- Add support in linker to generate tagged TLS entries
- Update linker to process TLS relocations correctly
- Update TLS code to ignore top half of module ID
- Update module images to hold a "module ID"
- Update custome linker to update module ID during binary link
- Update TLS code to track TLS sections via module ID
Change-Id: I1589550d7787beb08827ca24a728397dedf0373b
RTC: 147599
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71709
Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com>
Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/testcore')
-rw-r--r-- | src/usr/testcore/rtloader/loader.H | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/usr/testcore/rtloader/loader.H b/src/usr/testcore/rtloader/loader.H index 1c4423484..64db72dc4 100644 --- a/src/usr/testcore/rtloader/loader.H +++ b/src/usr/testcore/rtloader/loader.H @@ -228,7 +228,7 @@ class RuntimeLoaderTest : public CxxTest::TestSuite "std 2, 40(1); bctrl; ld 2, 40(1); " "mr %0, 3" : "=r" (result) : "r" (entry), "r" (param0), "r" (param1) : - "lr","ctr","r0","r3","r4","r5","r6","r7","r8","r9", + "lr","ctr","cr0","r0","r3","r4","r5","r6","r7","r8","r9", "r10","r11"); // TODO: Need to double check the ABI here. return result; |