[Bug c/28955] New: "unrecognizable insn" : atomic op on short with bit inversion on val
kawika at QEDmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Sep 5 14:35:00 GMT 2006
I am reporting compiler problem as advised by error message.
GCC version: 4.1.0
System type: build machine is P4 3GHz, building for target i586
# Code to reproduce problem
#######################
short test(short y)
{
return __sync_and_and_fetch(&y, ~(0x01| 0x02 | 0x03))
}
Note: If the code is changed so that no bit-wise inversion is done, no problem.
# Compilation error message
#######################
test.c:nnn: error: unrecognizable insn:
(insn 11 16 12 2 (set:HI 66)
(const_int 65532 [0xfffc])) -1 (nil)
(nil))
test.c:nnn: internal compiler error: in extract_insn, at recog.c:2084
## MAKEFILE extract on optimization settings :
####################################
ifeq ($(strip $(bldOPTIMIZE)),1)
OPTIMIZE:= \
-fdefer-pop -fthread-jumps -fregmove -foptimize-sibling-calls \
-fcaller-saves -finline-functions \
-fexpensive-optimizations -fstrength-reduce \
-frerun-cse-after-loop -frerun-loop-opt \
-fgcse -fgcse-lm -fgcse-sm -fcse-follow-jumps -fcse-skip-blocks
\
-fschedule-insns -fschedule-insns2 -fsched-spec-load \
-fomit-frame-pointer -fmerge-constants -fforce-addr \
-foptimize-register-move
ifeq ($(GCC4),1)
OPTIMIZE+=\
-fgcse-las -fgcse-after-reload
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-ftree-pre \
-ftree-ccp -ftree-dce -ftree-dominator-opts -ftree-ch
-ftree-loop-optimize \
-ftree-loop-linear -ftree-loop-im -ftree-loop-ivcanon -fivopts
-ftree-sra \
-ftree-copyrename -ftree-ter -ftree-lrs -ftree-vectorize \
-ftree-fre
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-freorder-blocks -freorder-blocks-and-partition
-freorder-functions
endif
ifeq ($(GCC$),1)
OPTIMIZE+=\
-fweb -funroll-loops -funroll-all-loops -fsplit-ivs-in-unroller
\
-fvariable-expansion-in-unroller
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-fmove-loop-invariants \
-ftracer -fsched2-use-traces \
-fsched2-use-superblocks
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-fsched-spec-load
# -fsched-spec-load-dangerous
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-freschedule-modulo-scheduled-loops \
-fif-conversion -fif-conversion2 \
-fdelete-null-pointer-checks
endif
ifeq ($(GCC4),1)
OPTIMIZE+=\
-floop-optimize -floop-optimize2 -fcrossjumping
endif
--
Summary: "unrecognizable insn" : atomic op on short with bit
inversion on val
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: kawika at QEDmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28955
More information about the Gcc-bugs
mailing list