[Bug target/35294] iwmmxt intrinsics, internal compiler error

2024-04-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

Andrew Pinski  changed:

   What|Removed |Added

  Known to work||5.1.0
 Status|NEW |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |5.0

--- Comment #21 from Andrew Pinski  ---
Fixed.

[Bug target/35294] iwmmxt intrinsics, internal compiler error

2013-02-22 Thread nickc at gcc dot gnu.org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



Nick Clifton  changed:



   What|Removed |Added



 CC||eliot at sonic dot net



--- Comment #20 from Nick Clifton  2013-02-22 
12:40:42 UTC ---

*** Bug 36966 has been marked as a duplicate of this bug. ***


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2013-02-22 Thread nickc at gcc dot gnu.org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



Nick Clifton  changed:



   What|Removed |Added



 CC||gfan at sta dot samsung.com



--- Comment #19 from Nick Clifton  2013-02-22 
12:38:36 UTC ---

*** Bug 36798 has been marked as a duplicate of this bug. ***


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2013-01-28 Thread nickc at redhat dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



Nick Clifton  changed:



   What|Removed |Added



 CC||nickc at redhat dot com



--- Comment #18 from Nick Clifton  2013-01-28 15:09:52 
UTC ---

I have checked in a modified version of serowk's patch to the 4.7 branch.  The

modification was to produce an error message in the cases where the modes do

not match, and to allow for the automatic forcing of constants into registers

for those builtins that do not accept immediates as their third operand.



Cheers

  Nick


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2013-01-28 Thread nickc at gcc dot gnu.org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



--- Comment #17 from Nick Clifton  2013-01-28 
15:07:48 UTC ---

Author: nickc

Date: Mon Jan 28 15:07:41 2013

New Revision: 195510



URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=195510

Log:

PR target/35294

* config/arm/arm.c (arm_expand_binop_builtin): Add new parameter.

Fix mode checks to allow for the passing of constants in the

second parameter.

(arm_expand_builtin): Adjust calls to arm_expand_binop_builtin.

Add entries in the switch statement for builtin iwmmxt vector

shift and rotate builtins.



Modified:

branches/gcc-4_7-branch/gcc/ChangeLog

branches/gcc-4_7-branch/gcc/config/arm/arm.c


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2012-06-26 Thread nickc at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #16 from Nick Clifton  2012-06-26 
14:59:54 UTC ---
Author: nickc
Date: Tue Jun 26 14:59:45 2012
New Revision: 188988

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188988
Log:
* doc/extend.texi (__builtin_arm_tinsrb): Add missing second
parameter.
(__builtin_arm_tinsrh): Likewise.
(__builtin_arm_tinsrw): Likewise.
(__builtin_arm_wsadb): Add missing v2si parameter.
(__builtin_arm_wsadh): Likewise.
(__builtin_arm_getwcx): Delete.
(__builtin_arm_setwcx): Delete.
(__builtin_arm_getwcgr0): Add.
(__builtin_arm_getwcgr1): Add.
(__builtin_arm_getwcgr2): Add.
(__builtin_arm_getwcgr3): Add.
(__builtin_arm_setwcgr0): Add.
(__builtin_arm_setwcgr1): Add.
(__builtin_arm_setwcgr2): Add.
(__builtin_arm_setwcgr3): Add.

PR target/35294
* gcc.target/arm/mmx-2.c: New.

Added:
trunk/gcc/testsuite/gcc.target/arm/mmx-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/extend.texi
trunk/gcc/testsuite/ChangeLog


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2012-05-06 Thread junkmailnotread at yahoo dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

junkmailnotread at yahoo dot com changed:

   What|Removed |Added

 CC||junkmailnotread at yahoo
   ||dot com

--- Comment #15 from junkmailnotread at yahoo dot com 2012-05-06 12:28:25 UTC 
---
The previous attachment 25391 fixes it for me for gcc-4.5.3.

It allowed me to build pixman-0.24.0 with the --enable-arm-iwmmxt configure
option.


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2011-10-01 Thread mattst88 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #14 from Matt Turner  2011-10-01 
15:26:10 UTC ---
Created attachment 25391
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25391
[PATCH] Wire-up missing ARM iwmmxt intrinsics

Fixes it for me for gcc-4.6.1. Allows me to build an iwmmxt-optimized pixman
using the standard _mm_* intrinsics.


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2010-12-17 Thread serowk at yandex dot ru
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #13 from serowk at yandex dot ru 2010-12-17 16:22:36 UTC ---
I have attached two versions of the patch (gcc 4.2.4 and gcc 4.4.5). Patched
gcc 4.2.4 seems to work. With the patched gcc 4.4.5, I ran into bug 44332, and
can not check. For arm platform newer versions of gcc seems more completely
ubusabled.


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2010-12-17 Thread serowk at yandex dot ru
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #12 from serowk at yandex dot ru 2010-12-17 16:17:07 UTC ---
Created attachment 22800
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22800
gcc 4.4.5 possible fix


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2010-12-17 Thread serowk at yandex dot ru
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #11 from serowk at yandex dot ru 2010-12-17 16:16:28 UTC ---
Created attachment 22799
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22799
gcc 35294 possible Fix


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2010-12-16 Thread serowk at yandex dot ru
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

--- Comment #10 from serowk at yandex dot ru 2010-12-16 11:19:50 UTC ---
It seems that this bug affects the whole iwmmxt shift intrinsics
group(_mm_slli_pi16, _mm_slli_pi32, _mm_slli_si64, _mm_srai_pi16,
_mm_srai_pi32, _mm_srai_si64, _mm_srli_pi16, _mm_srli_pi32, _mm_srli_si64,
_mm_rori_pi16, _mm_rori_pi32, _mm_rori_si64). I tested it.

These functions have the same prototype:
static __inline __m64 func_name (__m64 __m, int __count)

But it is very strange that abort did not work in gcc 3.4.5(This version looks
like is not affected by this bug and it contains abort instead gcc_assert).

My suggestion:

static rtx
arm_expand_binop_builtin_iwmmx_shift (enum insn_code icode,
  tree exp, rtx target)
{
  rtx pat;
  tree arg0 = CALL_EXPR_ARG (exp, 0);
  tree arg1 = CALL_EXPR_ARG (exp, 1);
  rtx op0 = expand_normal (arg0);
  rtx op1 = expand_normal (arg1);
  enum machine_mode tmode = insn_data[icode].operand[0].mode;
  enum machine_mode mode0 = insn_data[icode].operand[1].mode;
  enum machine_mode mode1 = insn_data[icode].operand[2].mode;

  gcc_assert (VECTOR_MODE_P (mode0))
  op0 = safe_vector_operand (op0, mode0);

  gcc_assert (!VECTOR_MODE_P (mode1))

  if (! target
  || GET_MODE (target) != tmode
  || ! (*insn_data[icode].operand[0].predicate) (target, tmode))
target = gen_reg_rtx (tmode);

  if (! (*insn_data[icode].operand[1].predicate) (op0, mode0))
op0 = copy_to_mode_reg (mode0, op0);
  if (! (*insn_data[icode].operand[2].predicate) (op1, mode1))
op1 = copy_to_mode_reg (mode1, op1);

  pat = GEN_FCN (icode) (target, op0, op1);
  if (! pat)
return 0;
  emit_insn (pat);
  return target;
}

And in
arm_expand_builtin
...
  switch (fcode)
{
...
case ARM_BUILTIN_WSLLHI:
case ARM_BUILTIN_WSLLWI:
case ARM_BUILTIN_WSLLDI:

case ARM_BUILTIN_WSRAHI:
case ARM_BUILTIN_WSRAWI:
case ARM_BUILTIN_WSRADI:

case ARM_BUILTIN_WSRLHI:
case ARM_BUILTIN_WSRLWI:
case ARM_BUILTIN_WSRLDI:

case ARM_BUILTIN_WRORHI:
case ARM_BUILTIN_WRORWI:
case ARM_BUILTIN_WRORDI:
arm_expand_binop_builtin_iwmmx_shift(fcode, exp, target);
...


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2010-11-22 Thread serowk at yandex dot ru
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294

serowk at yandex dot ru changed:

   What|Removed |Added

 CC||serowk at yandex dot ru

--- Comment #9 from serowk at yandex dot ru 2010-11-22 11:49:32 UTC ---
Appears with gcc 4.4.5 (builded with crosstool-ng 1.9.0)

$ /opt/arm-iwmmx-linux-uclibcgnueabi/bin/arm-iwmmx-linux-uclibcgnueabi-gcc
iwmmx_test.c -flax-vector-conversions -O1
In file included from iwmmx_test.c:1:
/opt/arm-iwmmx-linux-uclibcgnueabi/lib/gcc/arm-iwmmx-linux-uclibcgnueabi/4.4.5/include/mmintrin.h:
In function 'main':
/opt/arm-iwmmx-linux-uclibcgnueabi/lib/gcc/arm-iwmmx-linux-uclibcgnueabi/4.4.5/include/mmintrin.h:526:
internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:16168
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.

iwmmx_test.c:

#include 
int main()
{
_mm_srli_pi16(_mm_setzero_si64(), 8);
return 0;
}

Compiler fail only when there is optimization(-O1).


[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-17 Thread rearnsha at gcc dot gnu dot org


-- 

rearnsha at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-09-17 17:04:07
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-17 Thread rearnsha at gcc dot gnu dot org


--- Comment #8 from rearnsha at gcc dot gnu dot org  2009-09-17 17:03 
---
The assertion in the source is clearly broken if a constant can legally be
passed to it.  If a constant can't legally be passed, then the caller needs to
be fixed to diagnose it before we reach this point.


-- 

rearnsha at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|FIXED   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-16 Thread ixt at nm dot ru


--- Comment #7 from ixt at nm dot ru  2009-09-16 18:26 ---
ß êîãäà-òî ïî ïîâîäó ýòîé îøèáêè îáèëüíî ãóãëèë è íàõîäèë íåñêîëüêî òðåäîâ â
ýòîé áàãçèëëå. Èõ çàêðûâàëè ïîä ïðåäëîãîì "duplicate". ß äóìàþ, åñëè òû
çàõî÷åøü, òû èõ òîæå íàéä¸øü. Òàê ÷òî - ýòî ãëàâíûé òðåä.
À òàê íàâåðíîå íàäî îòêðûâàòü íîâûé áàã è ñêîïèïàñòèòü òóäà ÷òî åñòü. :)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-16 Thread den at openvz dot org


--- Comment #6 from den at openvz dot org  2009-09-16 17:22 ---
for russian - yes.

Should we open new issue? :)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-16 Thread ixt at nm dot ru


--- Comment #5 from ixt at nm dot ru  2009-09-16 15:58 ---
Denis, nobody wants to open this thread. First, we must do it.

PS You say in Russian?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-09-13 Thread den at openvz dot org


--- Comment #4 from den at openvz dot org  2009-09-13 17:07 ---
same problem with gcc-4.3.4, sources comes from gentoo package

iris ~ $ arm-iwmmxt-linux-gnueabi-g++ -flax-vector-conversions -c -O2  1.cpp
/vol/marvel-4.3.2/bin/../lib/gcc/arm-iwmmxt-linux-gnueabi/4.3.4/include/mmintrin.h:
In function 'void foo()':
/vol/marvel-4.3.2/bin/../lib/gcc/arm-iwmmxt-linux-gnueabi/4.3.4/include/mmintrin.h:529:
internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:15429
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
iris ~ $ arm-iwmmxt-linux-gnueabi-g++ -v
Using built-in specs.
Target: arm-iwmmxt-linux-gnueabi
Configured with: /vol/build/gcc-4.3.4/configure
--target=arm-iwmmxt-linux-gnueabi --with-cpu=iwmmxt --with-float=soft
--enable-cxx-flags=-msoft-float --disable-nls --enable-threads=posix
--enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c,c++
--enable-shared --enable-c99 --enable-long-long
--with-sysroot=/opt/marvel/sysroot --prefix=/opt/marvel/
Thread model: posix
gcc version 4.3.4 (GCC) 


-- 

den at openvz dot org changed:

   What|Removed |Added

 CC||den at openvz dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-02-24 Thread ixt at nm dot ru


--- Comment #3 from ixt at nm dot ru  2009-02-24 14:37 ---
Can anybody reopen bug?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-02-19 Thread ixt at nm dot ru


--- Comment #2 from ixt at nm dot ru  2009-02-19 13:44 ---
Testing sample with gcc-4.3.3 (released after 2009-01-02 12:06) also fail:

sergeyhost:/tmp$ cat ./main.c 
#include 
void foo()
{
_mm_srli_pi16(_mm_setzero_si64(), 8);
}
sergeyhost:/tmp$

sergeyhost:/tmp$ arm-iwmmx-linux-gnueabi-gcc -flax-vector-conversions -c -O2
./main.c
/opt/toolchain/arm-iwmmx-linux-gnueabi/gcc-4.3.3-glibc-2.8-binutils-2.18-kernel-2.6.22-sanitized/lib/gcc/arm-iwmmx-linux-gnueabi/4.3.3/include/mmintrin.h:
In function 'foo':
/opt/toolchain/arm-iwmmx-linux-gnueabi/gcc-4.3.3-glibc-2.8-binutils-2.18-kernel-2.6.22-sanitized/lib/gcc/arm-iwmmx-linux-gnueabi/4.3.3/include/mmintrin.h:529:
internal compiler error: in arm_expand_binop_builtin, at config/arm/arm.c:15380
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
sergeyhost:/tmp$ 

I am use OSELAS.Toolchan-1.99.3
arm-iwmmx-linux-gnueabi_gcc-4.3.2_glibc-2.8_binutils-2.18_kernel-2.6.27-sanitized
with small changes for me (update compiler because in contains "regression
fixes and docs only" and downgrade kernel headers). I think this changes
unimportant for bug.


-- 

ixt at nm dot ru changed:

   What|Removed |Added

 CC||ixt at nm dot ru


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294



[Bug target/35294] iwmmxt intrinsics, internal compiler error

2009-01-02 Thread laurent at guerby dot net


--- Comment #1 from laurent at guerby dot net  2009-01-02 12:06 ---
Fixed on 4.3.2-1 Debian gnueabi and on trunk at rev 142808 (tested native)


-- 

laurent at guerby dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35294