Page MenuHomePhabricator

[mips] Fix compile options for tramp3d-v4 test
ClosedPublic

Authored by abeserminji on Jul 18 2018, 8:08 AM.

Details

Summary

Add -mxgot to CPP flags, because for this test, GOT grows larger than 64k.

Diff Detail

Repository
rL LLVM

Event Timeline

abeserminji created this revision.Jul 18 2018, 8:08 AM
atanasyan added inline comments.Jul 19 2018, 3:15 AM
MultiSource/Benchmarks/tramp3d-v4/Makefile
17 ↗(On Diff #156072)

Does a linker fails without this option? Usually a linker automatically starts to create multi-GOT if a regular single GOT is overflowed. It's interesting if this option does not work in that case.

abeserminji added inline comments.Jul 19 2018, 3:57 AM
MultiSource/Benchmarks/tramp3d-v4/Makefile
17 ↗(On Diff #156072)

Yes it does, with this error: additional relocation overflows omitted from the output

atanasyan added inline comments.Jul 19 2018, 4:12 AM
MultiSource/Benchmarks/tramp3d-v4/Makefile
17 ↗(On Diff #156072)

Interesting. What options do you use to build the test case: 32/64 static/dynamic etc?

The test fail can be reproduced by running optimization level -O0 or -O1 with mips64r6 n64. Both big- and little-endian fail.

I forget that tramp3d-v4 test case consists a single file and this file is big enough. Could you apply the same changes to the CMakeLists.txt?

abeserminji retitled this revision from [mips] Fix Makefile for tramp3d-v4 test to [mips] Fix compile options for tramp3d-v4 test.

Comments addressed.

This revision is now accepted and ready to land.Aug 1 2018, 8:15 AM
This revision was automatically updated to reflect the committed changes.