public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug sanitizer/63983] New: compile time hog with -fsanitize=undefined
@ 2014-11-19 20:52 Joost.VandeVondele at mat dot ethz.ch
  2014-11-19 21:21 ` [Bug sanitizer/63983] " mpolacek at gcc dot gnu.org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Joost.VandeVondele at mat dot ethz.ch @ 2014-11-19 20:52 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 63983
           Summary: compile time hog with -fsanitize=undefined
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: sanitizer
          Assignee: unassigned at gcc dot gnu.org
          Reporter: Joost.VandeVondele at mat dot ethz.ch
                CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org,
                    jakub at gcc dot gnu.org, kcc at gcc dot gnu.org

Created attachment 34042
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34042&action=edit
testcase

The attached testcase needs a very long time to compile (well didn't finish in
my tests), if compiled with '-c -g -O1 -fno-omit-frame-pointer
-fsanitize=undefined -fno-sanitize=object-size bug.f90', while it takes ~10s
without '-fsanitize=undefined -fno-sanitize=object-size'.

It seems to be some bad interaction between var tracking and ubsan:

> pstack 40731
#0  0x0000000000dc8192 in set_slot_part(dataflow_set_def*, rtx_def*,
variable_def**, void*, long, var_init_status, rtx_def*) ()
#1  0x0000000000dca892 in canonicalize_values_star(variable_def**,
dataflow_set_def*) ()
#2  0x0000000000dcb34f in dataflow_set_merge(dataflow_set_def*,
dataflow_set_def*) ()
#3  0x0000000000dd4905 in vt_find_locations() ()
#4  0x0000000000dd4d35 in variable_tracking_main() ()
#5  0x0000000000a6095f in execute_one_pass(opt_pass*) ()
#6  0x0000000000a60e26 in execute_pass_list_1(opt_pass*) ()
#7  0x0000000000a60e38 in execute_pass_list_1(opt_pass*) ()
#8  0x0000000000a60e38 in execute_pass_list_1(opt_pass*) ()
#9  0x0000000000a60e81 in execute_pass_list(function*, opt_pass*) ()
#10 0x00000000007731a2 in cgraph_node::expand() ()
#11 0x00000000007748f3 in symbol_table::compile() ()
#12 0x0000000000776185 in symbol_table::finalize_compilation_unit() ()
#13 0x00000000009c59e6 in write_global_declarations() ()
#14 0x0000000000b2245e in compile_file() ()
#15 0x0000000000b24739 in toplev::main(int, char**) ()
#16 0x000000000124df59 in main ()


> time gfortran -c -g -O1 -fno-omit-frame-pointer -fsanitize=undefined -fno-sanitize=object-size bug.f90


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-11-20 10:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-19 20:52 [Bug sanitizer/63983] New: compile time hog with -fsanitize=undefined Joost.VandeVondele at mat dot ethz.ch
2014-11-19 21:21 ` [Bug sanitizer/63983] " mpolacek at gcc dot gnu.org
2014-11-20  4:52 ` Joost.VandeVondele at mat dot ethz.ch
2014-11-20 10:28 ` rguenth at gcc dot gnu.org

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 read-only IMAP folder(s) and NNTP newsgroup(s).