This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/69291] [6 Regression] wrong code at -O1 for ruby-2.3.0/regcomp.c:985:compile_length_quantifier_node()


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69291

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
             Status|RESOLVED                    |REOPENED
   Last reconfirmed|                            |2016-02-10
          Component|c                           |tree-optimization
                 CC|                            |rguenth at gcc dot gnu.org
         Resolution|FIXED                       |---
     Ever confirmed|0                           |1
   Target Milestone|---                         |6.0

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Issue still happens on i586 and fails the ruby build with

[  149s] gcc -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -O2
-Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables
-fasynchronous-unwind-tables -Wno-error=misleading-indentation
-Wno-error=narrowing -Wno-error=nonnull -Wno-error=unused-const-variable -g
-fno-strict-aliasing -O -U_FORTIFY_SOURCE -fPIC  -L. -fstack-protector
-rdynamic -Wl,-export-dynamic -fstack-protector  main.o dmydln.o miniinit.o
miniprelude.o array.o bignum.o class.o compar.o complex.o dir.o dln_find.o
encoding.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o
inits.o io.o marshal.o math.o node.o numeric.o object.o pack.o parse.o
process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o
regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o
strftime.o string.o struct.o time.o transcode.o util.o variable.o version.o
compile.o debug.o iseq.o vm.o vm_dump.o vm_backtrace.o vm_trace.o thread.o
cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o strlcpy.o strlcat.o
setproctitle.o addr2line.o  dmyext.o   -lpthread -ldl -lcrypt -lm   -o miniruby
[  149s] ./miniruby -I./lib -I. -I.ext/common  ./tool/mkconfig.rb
-timestamp=.rbconfig.time \
[  149s]        -install_name=ruby.ruby2.1 \
[  149s]        -so_name=ruby2.1 rbconfig.rb
[  149s] ./tool/mkconfig.rb:121:in `gsub': undefined bytecode (bug):
/\$(?:\$|\{?(\w+)\}?)/ (RegexpError)

the regcomp.c workaround, -O0 for compile_length_quantifier_node still works,
in fact "no-tree-dominator-opts" is enough to fix it.

Poking some more.

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