From: Konstantin Ananyev <konstantin.v.ananyev@yandex.ru>
To: Tyler Retzlaff <roretzla@linux.microsoft.com>
Cc: dev@dpdk.org, bruce.richardson@intel.com,
david.marchand@redhat.com, thomas@monjalon.net,
mb@smartsharesystems.com, konstantin.ananyev@huawei.com
Subject: Re: [PATCH v3 06/11] eal: typedef cpu flag enum as int for msvc
Date: Mon, 17 Apr 2023 23:10:25 +0100 [thread overview]
Message-ID: <e5b1a2c7-7545-ba4d-0218-91f59761681d@yandex.ru> (raw)
In-Reply-To: <20230417154602.GA3180@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
17/04/2023 16:46, Tyler Retzlaff пишет:
> On Sun, Apr 16, 2023 at 10:29:38PM +0100, Konstantin Ananyev wrote:
>> 10/04/2023 21:53, Tyler Retzlaff пишет:
>>> On Mon, Apr 10, 2023 at 08:59:33PM +0100, Konstantin Ananyev wrote:
>>>> 06/04/2023 01:45, Tyler Retzlaff пишет:
>>>>> Forward declaration of a typedef is a non-standard extension and is not
>>>>> supported by msvc. Use an int instead.
>>>>>
>>>>> Abstract the use of the int/enum rte_cpu_flag_t in function parameter
>>>>> lists by re-typdefing the enum rte_cpu_flag_t to the rte_cpu_flag_t
>>>>> identifier.
>>>>>
>>>>> Remove the use of __extension__ on function prototypes where
>>>>> rte_cpu_flag_t appeared in parameter lists, it is sufficient to have the
>>>>> conditionally compiled __extension__ at the non-standard forward
>>>>> declaration site.
>>>>>
>>>>> Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
>>>>> ---
>>>>> lib/eal/include/generic/rte_cpuflags.h | 12 +++++++-----
>>>>> 1 file changed, 7 insertions(+), 5 deletions(-)
>>>>>
>>>>> diff --git a/lib/eal/include/generic/rte_cpuflags.h b/lib/eal/include/generic/rte_cpuflags.h
>>>>> index d35551e..87ab03c 100644
>>>>> --- a/lib/eal/include/generic/rte_cpuflags.h
>>>>> +++ b/lib/eal/include/generic/rte_cpuflags.h
>>>>> @@ -44,8 +44,12 @@ struct rte_cpu_intrinsics {
>>>>> /**
>>>>> * Enumeration of all CPU features supported
>>>>> */
>>>>> +#ifndef RTE_TOOLCHAIN_MSVC
>>>>> __extension__
>>>>> -enum rte_cpu_flag_t;
>>>>> +typedef enum rte_cpu_flag_t rte_cpu_flag_t;
>>>>> +#else
>>>>> +typedef int rte_cpu_flag_t;
>>>>> +#endif
>>>>
>>>>
>>>> Just curious what exactly MSVC doesn't support here?
>>>> Is that construction like:
>>>> enum rte_cpu_flag_t {....};
>>>> enum rte_cpu_flag_t;
>>>> ...
>>>> Or something else?
>>>
>>> Forward declaration of an enum is non standard. It's probably only
>>> allowed by gcc as an extension because gcc will make some kind of
>>> implementation specific promise for it always to be `int` size by
>>> default (assuming no other -foptions).
>>
>> I understood that part, what is not clear to me from where we are
>> getting forward declarations?
>
> i investigated and expirmented with this further. i can see now there
> were two things that were tripping things up portability wise.
>
> * it's still a forward declaration even if the full enum definition is
> visible and thus generates a warning (but not an error).
>
> * the use of __extension__ which is valid in this context because it is
> after all an extension (causes compilation error for msvc).
>
> my testing shows i'm still getting correct sizes (because the definition
> is visible) so what i'll do is update this patch to remove the use of
> __extension__ and allow the warning to be emitted for now. i think this
> is probably what you're preference would be.
>
> in a future series i will either suppress the warning for msvc or remove
> the declaration entirely which as you point out should not be needed due
> to the include via arch/rte_cpuflags.h -> include generic/rte_cpuflags.h.
Agree, let's try to remove this declaration.
I don't see any point to have declaration straight after defintion.
Thanks
Konstantin
>
> thanks!
>
>> As I remember the usual organization of arch specific rte_cpuflags.h:
>>
>> /* type definition */
>> enum rte_cpu_flag_t {...};
>>
>> /some other stuff */
>>
>> #include "generic/rte_cpuflags.h"
>>
>> Which contains 'enum rte_cpu_flag_t' type declaration.
>> But it doesn't look like a forward declaration to me.
>> Is there a place where we do include "generic/rte_cpuflags.h" directly
>> (not from arch specific header)?
>> If so. might be we should change it to include arch specific header instead?
>>
>>>
>>> If the enum was defined before reference it would probably be accepted
>>> by msvc since it could 'see' the definition and know the integer width
>>> in use.
>>>
>>>>
>>>>
>>>>> /**
>>>>> * Get name of CPU flag
>>>>> @@ -56,9 +60,8 @@ struct rte_cpu_intrinsics {
>>>>> * flag name
>>>>> * NULL if flag ID is invalid
>>>>> */
>>>>> -__extension__
>>>>> const char *
>>>>> -rte_cpu_get_flag_name(enum rte_cpu_flag_t feature);
>>>>> +rte_cpu_get_flag_name(rte_cpu_flag_t feature);
>>>>> /**
>>>>> * Function for checking a CPU flag availability
>>>>> @@ -70,9 +73,8 @@ struct rte_cpu_intrinsics {
>>>>> * 0 if flag is not available
>>>>> * -ENOENT if flag is invalid
>>>>> */
>>>>> -__extension__
>>>>> int
>>>>> -rte_cpu_get_flag_enabled(enum rte_cpu_flag_t feature);
>>>>> +rte_cpu_get_flag_enabled(rte_cpu_flag_t feature);
>>>>> /**
>>>>> * This function checks that the currently used CPU supports the CPU features
next prev parent reply other threads:[~2023-04-17 22:10 UTC|newest]
Thread overview: 240+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-03 21:52 [PATCH 0/9] msvc integration changes Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 1/9] eal: use rdtsc intrinsic when compiling with msvc Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 2/9] eal: use rtm and xtest intrinsics " Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 3/9] eal: use barrier " Tyler Retzlaff
2023-04-04 8:53 ` Bruce Richardson
2023-04-04 15:43 ` Tyler Retzlaff
2023-04-04 16:23 ` Bruce Richardson
2023-04-04 16:39 ` Tyler Retzlaff
2023-04-04 12:11 ` Konstantin Ananyev
2023-04-04 14:57 ` Morten Brørup
2023-04-04 15:49 ` Tyler Retzlaff
2023-04-04 23:49 ` Konstantin Ananyev
2023-04-05 0:04 ` Tyler Retzlaff
2023-04-05 10:57 ` Konstantin Ananyev
2023-04-05 12:35 ` Morten Brørup
2023-04-05 15:38 ` Tyler Retzlaff
2023-04-10 14:12 ` Konstantin Ananyev
2023-04-06 0:07 ` Tyler Retzlaff
2023-04-10 20:02 ` Konstantin Ananyev
2023-04-10 20:58 ` Tyler Retzlaff
2023-04-11 9:10 ` Bruce Richardson
2023-04-11 21:22 ` Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 4/9] eal: typedef cpu flag enum as int for msvc Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 5/9] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 6/9] eal: expand most macros to empty when using msvc Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 7/9] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 8/9] telemetry: disable json print formatting with msvc Tyler Retzlaff
2023-04-03 21:52 ` [PATCH 9/9] telemetry: avoid expanding versioned symbol macros on msvc Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 0/9] msvc integration changes Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 1/9] eal: use rdtsc intrinsic when compiling with msvc Tyler Retzlaff
2023-04-05 8:59 ` Bruce Richardson
2023-04-04 20:07 ` [PATCH v2 2/9] eal: use rtm and xtest intrinsics " Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 3/9] eal: use barrier " Tyler Retzlaff
2023-04-05 10:33 ` Bruce Richardson
2023-04-05 10:45 ` Konstantin Ananyev
2023-04-05 15:42 ` Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 4/9] eal: typedef cpu flag enum as int for msvc Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 5/9] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 6/9] eal: expand most macros to empty when using msvc Tyler Retzlaff
2023-04-05 10:44 ` Bruce Richardson
2023-04-05 15:51 ` Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 7/9] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 8/9] telemetry: disable json print formatting with msvc Tyler Retzlaff
2023-04-04 20:07 ` [PATCH v2 9/9] telemetry: avoid expanding versioned symbol macros on msvc Tyler Retzlaff
2023-04-05 10:56 ` Bruce Richardson
2023-04-05 16:02 ` Tyler Retzlaff
2023-04-05 16:17 ` Bruce Richardson
2023-04-06 0:45 ` [PATCH v3 00/11] msvc integration changes Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 01/11] eal: use rdtsc intrinsic when compiling with msvc Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 02/11] eal: use rtm and xtest intrinsics " Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 03/11] eal: use barrier " Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 04/11] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 05/11] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 06/11] eal: typedef cpu flag enum as int for msvc Tyler Retzlaff
2023-04-10 19:59 ` Konstantin Ananyev
2023-04-10 20:53 ` Tyler Retzlaff
2023-04-16 21:29 ` Konstantin Ananyev
2023-04-17 15:46 ` Tyler Retzlaff
2023-04-17 22:10 ` Konstantin Ananyev [this message]
2023-04-06 0:45 ` [PATCH v3 07/11] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 08/11] eal: expand most macros to empty when using msvc Tyler Retzlaff
2023-04-06 2:25 ` Stephen Hemminger
2023-04-06 6:44 ` Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 09/11] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 10/11] telemetry: disable json print formatting with msvc Tyler Retzlaff
2023-04-06 9:25 ` Bruce Richardson
2023-04-06 15:45 ` Tyler Retzlaff
2023-04-06 0:45 ` [PATCH v3 11/11] telemetry: avoid expanding versioned symbol macros on msvc Tyler Retzlaff
2023-04-11 10:24 ` Bruce Richardson
2023-04-11 20:34 ` Tyler Retzlaff
2023-04-12 8:50 ` Bruce Richardson
2023-04-11 21:12 ` [PATCH v4 00/14] msvc integration changes Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 01/14] eal: use rdtsc intrinsic Tyler Retzlaff
2023-04-12 10:29 ` Konstantin Ananyev
2023-04-11 21:12 ` [PATCH v4 02/14] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-04-12 8:54 ` Bruce Richardson
2023-04-12 10:27 ` Konstantin Ananyev
2023-04-11 21:12 ` [PATCH v4 03/14] eal: use barrier intrinsics Tyler Retzlaff
2023-04-12 8:55 ` Bruce Richardson
2023-04-12 12:37 ` Konstantin Ananyev
2023-04-11 21:12 ` [PATCH v4 04/14] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 05/14] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 06/14] eal: use prefetch intrinsics Tyler Retzlaff
2023-04-12 9:05 ` Bruce Richardson
2023-04-12 12:31 ` Konstantin Ananyev
2023-04-12 15:19 ` Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 07/14] eal: use byte swap intrinsics Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 08/14] eal: typedef cpu flag enum as int Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 09/14] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 10/14] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 11/14] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 12/14] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 13/14] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-04-11 21:12 ` [PATCH v4 14/14] eal: always define MSVC as little endian Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 00/14] msvc integration changes Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 01/14] eal: use rdtsc intrinsic Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 02/14] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 03/14] eal: use barrier intrinsics Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 04/14] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 05/14] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 06/14] eal: use prefetch intrinsics Tyler Retzlaff
2023-04-14 9:09 ` Bruce Richardson
2023-04-13 21:25 ` [PATCH v5 07/14] eal: use byte swap intrinsics Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 08/14] eal: typedef cpu flag enum as int Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 09/14] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-13 21:25 ` [PATCH v5 10/14] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-04-13 21:26 ` [PATCH v5 11/14] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-04-14 6:45 ` Morten Brørup
2023-04-14 9:22 ` Bruce Richardson
2023-04-14 12:39 ` Morten Brørup
2023-04-14 13:25 ` Bruce Richardson
2023-04-14 17:02 ` Tyler Retzlaff
2023-04-15 7:16 ` Morten Brørup
2023-04-15 20:52 ` Tyler Retzlaff
2023-04-15 22:41 ` Morten Brørup
2023-04-15 22:52 ` Stephen Hemminger
2023-04-17 15:16 ` Tyler Retzlaff
2023-04-13 21:26 ` [PATCH v5 12/14] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-13 21:26 ` [PATCH v5 13/14] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-04-13 21:26 ` [PATCH v5 14/14] eal: always define MSVC as little endian Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 00/15] msvc integration changes Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 01/15] eal: use rdtsc intrinsic Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 02/15] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 03/15] eal: use barrier intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 04/15] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 05/15] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 06/15] eal: use prefetch intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 07/15] eal: use byte swap intrinsics Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 08/15] eal: typedef cpu flag enum as int Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 09/15] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 10/15] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 11/15] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 12/15] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 13/15] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 14/15] eal: always define MSVC as little endian Tyler Retzlaff
2023-04-15 1:15 ` [PATCH v6 15/15] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-04-15 6:11 ` [PATCH v6 00/15] msvc integration changes Morten Brørup
2023-04-17 16:10 ` [PATCH v7 00/14] " Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 01/14] eal: use rdtsc intrinsic Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 02/14] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 03/14] eal: use barrier intrinsics Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 04/14] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 05/14] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-05-01 12:55 ` Konstantin Ananyev
2023-04-17 16:10 ` [PATCH v7 06/14] eal: use prefetch intrinsics Tyler Retzlaff
2023-05-01 12:57 ` Konstantin Ananyev
2023-04-17 16:10 ` [PATCH v7 07/14] eal: use byte swap intrinsics Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 08/14] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 09/14] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 10/14] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 11/14] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 12/14] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 13/14] eal: always define MSVC as little endian Tyler Retzlaff
2023-04-17 16:10 ` [PATCH v7 14/14] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 00/14] msvc integration changes Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 01/14] eal: use rdtsc intrinsic Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 02/14] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 03/14] eal: use barrier intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 04/14] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 05/14] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 06/14] eal: use prefetch intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 07/14] eal: use byte swap intrinsics Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 08/14] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 09/14] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 10/14] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 11/14] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 12/14] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 13/14] eal: always define MSVC as little endian Tyler Retzlaff
2023-05-02 3:15 ` [PATCH v8 14/14] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 00/14] msvc integration changes Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 01/14] eal: use rdtsc intrinsic Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 02/14] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 03/14] eal: use barrier intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 04/14] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 05/14] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 06/14] eal: use prefetch intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 07/14] eal: use byte swap intrinsics Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 08/14] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 09/14] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 10/14] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 11/14] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 12/14] telemetry: avoid expanding versioned symbol macros on MSVC Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 13/14] eal: always define MSVC as little endian Tyler Retzlaff
2023-07-11 16:49 ` [PATCH v9 14/14] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 00/13] msvc integration changes Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 01/13] eal: use rdtsc intrinsic Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 02/13] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 03/13] eal: use barrier intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 04/13] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 05/13] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 06/13] eal: use prefetch intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 07/13] eal: use byte swap intrinsics Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 08/13] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 09/13] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 10/13] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 11/13] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 12/13] eal: always define MSVC as little endian Tyler Retzlaff
2023-08-02 21:35 ` [PATCH v10 13/13] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 00/16] msvc integration changes Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 01/16] eal: use rdtsc intrinsic Tyler Retzlaff
2023-08-26 14:38 ` Ali Alnubani
2023-08-29 16:16 ` Tyler Retzlaff
2023-08-30 13:38 ` Ali Alnubani
2023-08-30 15:48 ` Ali Alnubani
2023-08-30 16:29 ` Ali Alnubani
2023-08-31 23:06 ` Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 02/16] eal: use rtm and xtest intrinsics Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 03/16] eal: use barrier intrinsics Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 04/16] eal: use cpuid and cpuidex intrinsics Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 05/16] eal: use umonitor umwait and tpause intrinsics Tyler Retzlaff
2023-08-25 14:12 ` Bruce Richardson
2023-08-25 14:56 ` Morten Brørup
2023-08-25 15:12 ` Bruce Richardson
2023-08-25 15:44 ` Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 06/16] eal: use prefetch intrinsics Tyler Retzlaff
2023-08-24 12:06 ` David Marchand
2023-08-24 12:25 ` David Marchand
2023-08-25 9:23 ` Morten Brørup
2023-08-24 12:46 ` Morten Brørup
2023-08-24 14:18 ` David Marchand
2023-08-24 14:43 ` Morten Brørup
2023-08-24 15:53 ` Tyler Retzlaff
2023-08-25 8:44 ` David Marchand
2023-08-25 15:46 ` Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 07/16] eal: use byte swap intrinsics Tyler Retzlaff
2023-08-25 8:45 ` David Marchand
2023-08-11 19:20 ` [PATCH v11 08/16] eal: hide GCC extension based alignment markers Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 09/16] eal: hide typedefs based on GCC vector extensions Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 10/16] eal: expand most macros to empty when using MSVC Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 11/16] eal: exclude exposure of rte atomic APIs for MSVC builds Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 12/16] eal: always define MSVC as little endian Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 13/16] eal: do not define typeof macro when building with MSVC Tyler Retzlaff
2023-08-11 19:20 ` [PATCH v11 14/16] log: use standard ternary operator instead of GCC extension Tyler Retzlaff
2023-09-25 6:24 ` Morten Brørup
2023-09-25 15:09 ` Stephen Hemminger
2023-08-11 19:20 ` [PATCH v11 15/16] eal: " Tyler Retzlaff
2023-09-25 6:25 ` Morten Brørup
2023-08-11 19:20 ` [PATCH v11 16/16] eal: define priority based ctor dtor for MSVC Tyler Retzlaff
2023-09-25 6:28 ` Morten Brørup
2023-08-25 8:47 ` [PATCH v11 00/16] msvc integration changes David Marchand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e5b1a2c7-7545-ba4d-0218-91f59761681d@yandex.ru \
--to=konstantin.v.ananyev@yandex.ru \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@huawei.com \
--cc=mb@smartsharesystems.com \
--cc=roretzla@linux.microsoft.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).