Stl: How do I provide different configuration sets for different CPU architectures in tests?

Created on 1 Jul 2020  路  3Comments  路  Source: microsoft/STL

I'm working on test coverage for #935, which contains numerical algorithm. It is desirable to test with different compiler and runtime configurations that could affect floating point behavior. The relevant options differ by CPU architecture.

For example, /arch: IA32 is only available on x86, while /arch:VFPv4 is only available on ARM. /link loosefpmath.obj is meaningless with /arch:IA32, while /link fp10.obj is only meaningful with /arch:IA32.

How do I setup a different set of configurations to test for each CPU architecture?

question resolved

Most helpful comment

See here and here.

All 3 comments

We have some machinery in the test harness that @cbezault wrote which detects the undocumented compiler option /BE (that activates the EDG front-end), which is available only for x86 at this time. The test machinery has the concept of "features", and contains code that notes that the "edg" feature is available only for the x86 architecture. This is what skips /BE test configurations for x64 test runs. I believe it should be possible to extend this machinery, teaching it about the availability of compiler options like /arch:IA32 and /arch:VFPv4 on different architectures. Please let us know if you'd like help with this.

See here and here.

Was this page helpful?
0 / 5 - 0 ratings