Re: [PATCH] Dynamic dispatch of multiversioned functions and CPU mocks for code coverage.

2013-05-13 Thread Xinliang David Li
The MV testing support includes 3 logical parts: 1) runtime APIs to check mocked CPU types and features (__builtin_mock_cpu_supports ..) 2) runtime APIs to do CPU mocking; 3) compile time option to do lazy dispatching (instead of using IFUNC). 3) can be used to also support target without IFUNC s

Re: [PATCH] Dynamic dispatch of multiversioned functions and CPU mocks for code coverage.

2013-05-10 Thread Joseph S. Myers
On Fri, 10 May 2013, Sriraman Tallam wrote: > On Fri, May 10, 2013 at 6:34 AM, Joseph S. Myers > wrote: > > On Thu, 9 May 2013, Sriraman Tallam wrote: > > > >> Then, I plan to add the following hooks to libgcc (in a different patch) : > >> > >> int set_mock_cpu_is (const char *cpu); > >> int set_

Re: [PATCH] Dynamic dispatch of multiversioned functions and CPU mocks for code coverage.

2013-05-10 Thread Sriraman Tallam
On Fri, May 10, 2013 at 6:34 AM, Joseph S. Myers wrote: > On Thu, 9 May 2013, Sriraman Tallam wrote: > >> Then, I plan to add the following hooks to libgcc (in a different patch) : >> >> int set_mock_cpu_is (const char *cpu); >> int set_mock_cpu_supports (const char *isa); >> int init_mock_cpu ();

Re: [PATCH] Dynamic dispatch of multiversioned functions and CPU mocks for code coverage.

2013-05-10 Thread Joseph S. Myers
On Thu, 9 May 2013, Sriraman Tallam wrote: > Then, I plan to add the following hooks to libgcc (in a different patch) : > > int set_mock_cpu_is (const char *cpu); > int set_mock_cpu_supports (const char *isa); > int init_mock_cpu (); // Clear the values of the mock cpu. Those names are in the us

[PATCH] Dynamic dispatch of multiversioned functions and CPU mocks for code coverage.

2013-05-09 Thread Sriraman Tallam
Hi, This patch is an enhancement to the Function Multiversioning feature. This patch achieves two things: * Primarily, this patch makes it easy to test for code coverage of multiversioned functions. * Secondary, It makes function multiversioning work when there is no ifunc support. Sin