This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, i386, testsuite] Fix for PR49547, new tescases for lzcnt instruction


Just have a closer look to ABM intrinsics support in GCC
Seems, we have popcnt support in separate file: popcntintrin.h

So, after I move lzcnt intrinsics to lzcntintrin.h, abmintrin will
become useless and have to be removed at all

K

On Wed, Jul 27, 2011 at 6:20 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Wed, Jul 27, 2011 at 7:06 AM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote:
>> Okay,
>> Uros, thanks for correcting me. Here is updated Changelogs and patch.
>>
>> ChangeLog entry:
>> 2011-07-27 ?Kirill Yukhin ?<kirill.yukhin@intel.com>
>>
>> ? ? ? ?PR target/49547
>> ? ? ? ?* config/i386/abmintrin.h (head): Check if __LZCNT__ is defined.
>> ? ? ? ?(__lzcnt): Rename to ...
>> ? ? ? ?(__lzcnt32): ... this.
>> ? ? ? ?* config/i386/bmiintrin.h (head): Update copyright year.
>> ? ? ? ?(__lzcnt_u16): Removed.
>> ? ? ? ?(__lzcnt_u32): Removed.
>> ? ? ? ?(__lzcnt_u64): Likewise.
>> ? ? ? ?* config/i386/cpuid.h: New define.
>> ? ? ? ?* config/i386/driver-i386.c (host_detect_local_cpu): Detect
>> ? ? ? ?LZCNT feature.
>> ? ? ? ?* config/i386/i386-c.c (ix86_target_macros_internal): Define
>> ? ? ? ?__LZCNT__ if needed.
>> ? ? ? ?* config/i386/i386.c (ix86_target_string): New option -mlzcnt.
>> ? ? ? ?(ix86_option_override_internal): Handle LZCNT option.
>> ? ? ? ?(ix86_valid_target_attribute_inner_p): Likewise.
>> ? ? ? ?(struct builtin_description bdesc_args) <IX86_BUILTIN_CLZS>: Update.
>> ? ? ? ?* config/i386/i386.h (TARGET_LZCNT): New.
>> ? ? ? ?(CLZ_DEFINED_VALUE_AT_ZERO): Update.
>> ? ? ? ?* config/i386/i386.md (clz<mode>2): Update insn constraint.
>> ? ? ? ?(clz<mode>2_lzcnt): Likewise.
>> ? ? ? ?* doc/invoke.texi: Mention -mlzcnt option.
>> ? ? ? ?* doc/extend.texi: Likewise.
>
> Please mention config/i386/i386.opt. ?It is very odd to include
> abmintrin.h for lzcnt. ?What if someone decides to add new intrinsics
> for ABM? ?I think it should be renamed to lzcntintrin.h and make
> abmintrin.h include it instead.
>
> H.J.
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]