jjb: binutils-gdb: cleanup of known failures
[lttng-ci.git] / scripts / binutils-gdb / build.sh
1 #!/bin/bash
2 #
3 # Copyright (C) 2021 Michael Jeanson <mjeanson@efficios.com>
4 #
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18 set -exu
19
20 failed_configure() {
21 # Assume we are in the configured build directory
22 echo "#################### BEGIN config.log ####################"
23 cat config.log
24 echo "#################### END config.log ####################"
25 exit 1
26 }
27
28 sum2junit() {
29 local infile="$1"
30 local outfile="$2"
31
32 cat <<EOF > sum2junit.py
33 import sys
34 from datetime import datetime
35 import re
36 from xml.etree.ElementTree import ElementTree, Element, SubElement
37
38 line_re = re.compile(
39 r"^(PASS|XPASS|FAIL|XFAIL|KFAIL|DUPLICATE|UNTESTED|UNSUPPORTED|UNRESOLVED): (.*?\.exp): (.*)"
40 )
41
42 pass_count = 0
43 fail_count = 0
44 skip_count = 0
45 error_count = 0
46 now = datetime.now().isoformat(timespec="seconds")
47
48 testsuites = Element(
49 "testsuites",
50 {
51 "xmlns": "https://raw.githubusercontent.com/windyroad/JUnit-Schema/master/JUnit.xsd"
52 },
53 )
54 testsuite = SubElement(
55 testsuites,
56 "testsuite",
57 {
58 "name": "GDB",
59 "package": "package",
60 "id": "0",
61 "time": "1",
62 "timestamp": now,
63 "hostname": "hostname",
64 },
65 )
66 SubElement(testsuite, "properties")
67
68 for line in sys.stdin:
69 m = line_re.match(line)
70 if not m:
71 continue
72
73 state, exp_filename, test_name = m.groups()
74
75 testcase_name = "{} - {}".format(exp_filename, test_name)
76
77 testcase = SubElement(
78 testsuite,
79 "testcase",
80 {"name": testcase_name, "classname": "classname", "time": "0"},
81 )
82
83 if state in ("PASS", "XFAIL", "KFAIL"):
84 pass_count += 1
85 elif state in ("FAIL", "XPASS"):
86 print("{}: {}".format(state, testcase_name), file=sys.stderr)
87 fail_count += 1
88 SubElement(testcase, "failure", {"type": state})
89 elif state in ("UNRESOLVED", "DUPLICATE"):
90 print("{}: {}".format(state, testcase_name), file=sys.stderr)
91 error_count += 1
92 SubElement(testcase, "error", {"type": state})
93 elif state in ("UNTESTED", "UNSUPPORTED"):
94 skip_count += 1
95 SubElement(testcase, "skipped")
96 else:
97 assert False
98
99 testsuite.attrib["tests"] = str(pass_count + fail_count + skip_count)
100 testsuite.attrib["failures"] = str(fail_count)
101 testsuite.attrib["skipped"] = str(skip_count)
102 testsuite.attrib["errors"] = str(error_count)
103
104 SubElement(testsuite, "system-out")
105 SubElement(testsuite, "system-err")
106
107 et = ElementTree(testsuites)
108 et.write(sys.stdout, encoding="unicode")
109
110 sys.exit(1 if fail_count > 0 or error_count > 0 else 0)
111 EOF
112
113 python3 sum2junit.py < "$infile" > "$outfile"
114 }
115
116 # Required variables
117 WORKSPACE=${WORKSPACE:-}
118
119 arch=${arch:-}
120 conf=${conf:-}
121 build=${build:-}
122 target_board=${target_board:-unix}
123
124
125 SRCDIR="$WORKSPACE/src/binutils-gdb"
126 TMPDIR="$WORKSPACE/tmp"
127 PREFIX="/build"
128
129 # Create tmp directory
130 rm -rf "$TMPDIR"
131 mkdir -p "$TMPDIR"
132
133 export TMPDIR
134 export CFLAGS="-O2 -fsanitize=address"
135 export CXXFLAGS="-O2 -fsanitize=address -D_GLIBCXX_DEBUG=1"
136 export LDFLAGS="-fsanitize=address"
137
138 # Set platform variables
139 case "$arch" in
140 *)
141 export MAKE=make
142 export TAR=tar
143 export NPROC=nproc
144 ;;
145 esac
146
147 # Print build env details
148 print_os || true
149 print_tooling || true
150
151 # Enter the source directory
152 cd "$SRCDIR"
153
154 # Run bootstrap in the source directory prior to configure
155 #./bootstrap
156
157 # Get source version from configure script
158 #eval "$(grep '^PACKAGE_VERSION=' ./configure)"
159 #PACKAGE_VERSION=${PACKAGE_VERSION//\-pre*/}
160
161 # Set configure options and environment variables for each build
162 # configuration.
163 CONF_OPTS=("--prefix=$PREFIX")
164
165 case "$conf" in
166 *)
167 echo "Standard configuration"
168
169 # Use system tools
170 CONF_OPTS+=("--disable-binutils" "--disable-ld" "--disable-gold" "--disable-gas" "--disable-sim" "--disable-gprof" "--disable-gprofng")
171
172 # Use system libs
173 CONF_OPTS+=("--with-system-readline" "--with-system-zlib")
174
175 # Enable optional features
176 CONF_OPTS+=("--enable-targets=all" "--with-expat=yes" "--with-python=python3" "--with-guile=guile-2.2" "--enable-libctf")
177
178 CONF_OPTS+=("--enable-build-warnings" "--enable-gdb-build-warnings" "--enable-unit-tests" "--enable-ubsan")
179
180 ;;
181 esac
182
183 # Build type
184 # oot : out-of-tree build
185 # dist : build via make dist
186 # oot-dist: build via make dist out-of-tree
187 # * : normal tree build
188 #
189 # Make sure to move to the build directory and run configure
190 # before continuing.
191 case "$build" in
192 *)
193 echo "Out of tree build"
194
195 # Create and enter a temporary build directory
196 builddir=$(mktemp -d)
197 cd "$builddir"
198
199 "$SRCDIR/configure" "${CONF_OPTS[@]}" || failed_configure
200 ;;
201 esac
202
203 # We are now inside a configured build directory
204
205 # BUILD!
206 $MAKE -j "$($NPROC)" V=1 MAKEINFO=/bin/true
207
208 # Install in the workspace
209 $MAKE install DESTDIR="$WORKSPACE"
210
211 case "$target_board" in
212 unix | native-gdbserver | native-extended-gdbserver)
213 RUNTESTFLAGS="--target_board=$target_board"
214 ;;
215
216 *)
217 echo "Unknown \$target_board value: $target_board"
218 exit 1
219 ;;
220 esac
221
222 # Run tests, don't fail now, we know that "make check" is going to fail,
223 # since some tests don't pass.
224 $MAKE -C gdb --keep-going check -j "$($NPROC)" RUNTESTFLAGS="$RUNTESTFLAGS" FORCE_PARALLEL="1" || true
225
226 # Copy the dejagnu test results for archiving before cleaning the build dir
227 mkdir "${WORKSPACE}/results"
228 cp gdb/testsuite/gdb.log "${WORKSPACE}/results/"
229 cp gdb/testsuite/gdb.sum "${WORKSPACE}/results/"
230
231 # Filter out some known failures. There is one file per target board.
232 cat <<'EOF' > known-failures-unix
233 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_end
234 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_start
235 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_fatal_msg
236 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: [expr $internal_error_msg_count == 2]
237 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_end
238 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_start
239 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_fatal_msg
240 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: [expr $internal_error_msg_count == 2]
241 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_end
242 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_start
243 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_fatal_msg
244 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: [expr $internal_error_msg_count == 2]
245 FAIL: gdb.base/share-env-with-gdbserver.exp: strange named var: print result of getenv for 'asd ='
246 FAIL: gdb.cp/no-dmgl-verbose.exp: gdb_breakpoint: set breakpoint at 'f(std::string)'
247 FAIL: gdb.gdb/python-interrupts.exp: run until breakpoint at captured_command_loop
248 FAIL: gdb.threads/detach-step-over.exp: breakpoint-condition-evaluation=host: target-non-stop=on: non-stop=on: displaced=off: iter 3: attach (GDB internal error)
249 UNRESOLVED: gdb.base/libsegfault.exp: gdb emits custom handler warning
250 UNRESOLVED: gdb.base/readline-ask.exp: bell for more message
251 UNRESOLVED: gdb.base/symbol-without-target_section.exp: list -q main
252 UNRESOLVED: gdb.dwarf2/dw2-icc-opaque.exp: ptype p_struct
253 EOF
254
255 cat <<'EOF' > known-failures-native-gdbserver
256 DUPLICATE: gdb.base/cond-eval-mode.exp: awatch: awatch global
257 DUPLICATE: gdb.base/cond-eval-mode.exp: awatch: continue
258 DUPLICATE: gdb.base/cond-eval-mode.exp: break: break foo
259 DUPLICATE: gdb.base/cond-eval-mode.exp: break: continue
260 DUPLICATE: gdb.base/cond-eval-mode.exp: hbreak: continue
261 DUPLICATE: gdb.base/cond-eval-mode.exp: hbreak: hbreak foo
262 DUPLICATE: gdb.base/cond-eval-mode.exp: rwatch: continue
263 DUPLICATE: gdb.base/cond-eval-mode.exp: rwatch: rwatch global
264 DUPLICATE: gdb.base/cond-eval-mode.exp: watch: continue
265 DUPLICATE: gdb.base/cond-eval-mode.exp: watch: watch global
266 DUPLICATE: gdb.trace/circ.exp: check whether setting trace buffer size is supported
267 DUPLICATE: gdb.trace/ftrace-lock.exp: successfully compiled posix threads test case
268 DUPLICATE: gdb.trace/mi-tsv-changed.exp: create delete modify: tvariable $tvar3 modified
269 DUPLICATE: gdb.trace/signal.exp: get integer valueof "counter"
270 DUPLICATE: gdb.trace/status-stop.exp: buffer_full_tstart: tstart
271 DUPLICATE: gdb.trace/status-stop.exp: tstart_tstop_tstart: tstart
272 DUPLICATE: gdb.trace/tfind.exp: 8.17: tfind none
273 DUPLICATE: gdb.trace/trace-buffer-size.exp: set tracepoint at test_function
274 DUPLICATE: gdb.trace/trace-buffer-size.exp: tstart
275 DUPLICATE: gdb.trace/trace-mt.exp: successfully compiled posix threads test case
276 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_end
277 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_start
278 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_fatal_msg
279 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: [expr $internal_error_msg_count == 2]
280 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_end
281 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_start
282 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_fatal_msg
283 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: [expr $internal_error_msg_count == 2]
284 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_end
285 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_start
286 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_fatal_msg
287 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: [expr $internal_error_msg_count == 2]
288 FAIL: gdb.base/compare-sections.exp: after reload: compare-sections
289 FAIL: gdb.base/compare-sections.exp: after reload: compare-sections -r
290 FAIL: gdb.base/compare-sections.exp: after run to main: compare-sections
291 FAIL: gdb.base/compare-sections.exp: after run to main: compare-sections -r
292 FAIL: gdb.base/compare-sections.exp: compare-sections .text
293 FAIL: gdb.base/compare-sections.exp: read-only: compare-sections -r
294 FAIL: gdb.base/interrupt-daemon.exp: bg: continue& (timeout)
295 FAIL: gdb.base/interrupt-daemon.exp: bg: interrupt cmd stops process (timeout)
296 FAIL: gdb.base/interrupt-daemon.exp: bg: interrupt (timeout)
297 FAIL: gdb.base/interrupt-daemon.exp: fg: ctrl-c stops process (timeout)
298 FAIL: gdb.cp/no-dmgl-verbose.exp: gdb_breakpoint: set breakpoint at 'f(std::string)'
299 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=3: created new thread
300 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=4: created new thread
301 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=5: created new thread
302 FAIL: gdb.threads/process-dies-while-detaching.exp: single-process: continue: killed outside: continue
303 FAIL: gdb.threads/thread-specific-bp.exp: all-stop: continue to end (timeout)
304 FAIL: gdb.threads/thread-specific-bp.exp: non-stop: continue to end (timeout)
305 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_asm_test
306 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_c_test
307 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_recursion_test 0
308 FAIL: gdb.trace/change-loc.exp: 1 trace: continue to marker 2
309 FAIL: gdb.trace/change-loc.exp: 1 trace: continue to marker 3
310 FAIL: gdb.trace/change-loc.exp: 1 trace: tfind frame 0
311 FAIL: gdb.trace/change-loc.exp: 1 trace: tracepoint with two locations - installed (unload)
312 FAIL: gdb.trace/change-loc.exp: 1 trace: tracepoint with two locations - pending (unload)
313 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 1 (the program is no longer running)
314 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 2 (the program is no longer running)
315 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 3 (the program is no longer running)
316 FAIL: gdb.trace/change-loc.exp: 2 ftrace: run to main (the program exited)
317 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 0
318 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 1
319 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 2
320 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with three locations
321 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with two locations - installed (unload)
322 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with two locations - pending (unload)
323 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tstart
324 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tstop
325 FAIL: gdb.trace/change-loc.exp: 2 trace: continue to marker 2
326 FAIL: gdb.trace/change-loc.exp: 2 trace: continue to marker 3
327 FAIL: gdb.trace/change-loc.exp: 2 trace: tfind frame 2
328 FAIL: gdb.trace/change-loc.exp: 2 trace: tracepoint with two locations - installed (unload)
329 FAIL: gdb.trace/change-loc.exp: 2 trace: tracepoint with two locations - pending (unload)
330 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local char
331 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local double
332 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local float
333 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local int
334 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member char
335 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member double
336 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member float
337 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member int
338 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #0
339 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #1
340 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #2
341 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #3
342 FAIL: gdb.trace/collection.exp: collect register locals collectively: start trace experiment
343 FAIL: gdb.trace/collection.exp: collect register locals collectively: tfind test frame
344 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local char
345 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local double
346 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local float
347 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local int
348 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member char
349 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member double
350 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member float
351 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member int
352 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #0
353 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #1
354 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #2
355 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #3
356 FAIL: gdb.trace/collection.exp: collect register locals individually: define actions
357 FAIL: gdb.trace/mi-trace-frame-collected.exp: tfile: -trace-frame-collected (unexpected output)
358 FAIL: gdb.trace/mi-trace-frame-collected.exp: tfile: -trace-frame-collected --var-print-values 2 --comp-print-values --simple-values --registers-format x --memory-contents (unexpected output)
359 FAIL: gdb.trace/pending.exp: ftrace resolved: (the program exited)
360 FAIL: gdb.trace/pending.exp: ftrace works: continue to marker (the program is no longer running)
361 FAIL: gdb.trace/pending.exp: ftrace works: start trace experiment
362 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 0
363 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 1
364 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 2
365 FAIL: gdb.trace/pending.exp: ftrace works: (the program exited)
366 FAIL: gdb.trace/pending.exp: trace installed_in_trace: continue to marker 2
367 FAIL: gdb.trace/pending.exp: trace installed_in_trace: tfind test frame 0
368 FAIL: gdb.trace/unavailable.exp: collect globals: print object off: print derived_partial
369 FAIL: gdb.trace/unavailable.exp: collect globals: print object on: print derived_partial
370 FAIL: gdb.trace/unavailable.exp: collect globals: tfile: print object off: print derived_partial
371 FAIL: gdb.trace/unavailable.exp: collect globals: tfile: print object on: print derived_partial
372 FAIL: gdb.trace/unavailable.exp: unavailable locals: auto locals: info locals
373 FAIL: gdb.trace/unavailable.exp: unavailable locals: auto locals: tfile: info locals
374 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: info locals
375 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: print locd
376 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: print locf
377 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: info locals
378 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: print locd
379 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: print locf
380 FAIL: gdb.trace/unavailable.exp: unavailable locals: static locals: info locals
381 FAIL: gdb.trace/unavailable.exp: unavailable locals: static locals: tfile: info locals
382 UNRESOLVED: gdb.base/libsegfault.exp: gdb emits custom handler warning
383 UNRESOLVED: gdb.base/readline-ask.exp: bell for more message
384 UNRESOLVED: gdb.base/symbol-without-target_section.exp: list -q main
385 UNRESOLVED: gdb.dwarf2/dw2-icc-opaque.exp: ptype p_struct
386 FAIL: gdb.arch/ftrace-insn-reloc.exp: runto: run to main
387 FAIL: gdb.dwarf2/clztest.exp: runto: run to main
388 KPASS: gdb.threads/process-dies-while-detaching.exp: single-process: continue: watchpoint:sw: continue (PRMS gdb/28375)
389 FAIL: gdb.trace/change-loc.exp: 1 ftrace: runto: run to main
390 FAIL: gdb.trace/change-loc.exp: InstallInTrace disabled: ftrace: runto: run to main
391 FAIL: gdb.trace/ftrace-lock.exp: runto: run to main
392 FAIL: gdb.trace/ftrace.exp: runto: run to main
393 FAIL: gdb.trace/pending.exp: ftrace action_resolved: runto: run to main
394 FAIL: gdb.trace/pending.exp: ftrace disconn: runto: run to main
395 FAIL: gdb.trace/pending.exp: ftrace disconn_resolved: runto: run to main
396 FAIL: gdb.trace/pending.exp: ftrace installed_in_trace: runto: run to main
397 FAIL: gdb.trace/pending.exp: ftrace resolved_in_trace: runto: run to main
398 FAIL: gdb.trace/range-stepping.exp: runto: run to main
399 FAIL: gdb.trace/trace-break.exp: runto: run to main
400 FAIL: gdb.trace/trace-condition.exp: runto: run to main
401 FAIL: gdb.trace/trace-enable-disable.exp: test_tracepoint_enable_disable ftrace: runto: run to main
402 FAIL: gdb.trace/trace-enable-disable.exp: test_tracepoint_enable_disable trace: runto: run to main
403 FAIL: gdb.trace/trace-mt.exp: runto: run to main
404 FAIL: gdb.trace/tspeed.exp: runto: run to main
405 EOF
406
407 cat <<'EOF' > known-failures-native-extended-gdbserver
408 DUPLICATE: gdb.base/cond-eval-mode.exp: awatch: awatch global
409 DUPLICATE: gdb.base/cond-eval-mode.exp: awatch: continue
410 DUPLICATE: gdb.base/cond-eval-mode.exp: break: break foo
411 DUPLICATE: gdb.base/cond-eval-mode.exp: break: continue
412 DUPLICATE: gdb.base/cond-eval-mode.exp: hbreak: continue
413 DUPLICATE: gdb.base/cond-eval-mode.exp: hbreak: hbreak foo
414 DUPLICATE: gdb.base/cond-eval-mode.exp: rwatch: continue
415 DUPLICATE: gdb.base/cond-eval-mode.exp: rwatch: rwatch global
416 DUPLICATE: gdb.base/cond-eval-mode.exp: watch: continue
417 DUPLICATE: gdb.base/cond-eval-mode.exp: watch: watch global
418 DUPLICATE: gdb.threads/attach-into-signal.exp: threaded: thread apply 2 print $_siginfo.si_signo
419 DUPLICATE: gdb.trace/circ.exp: check whether setting trace buffer size is supported
420 DUPLICATE: gdb.trace/ftrace-lock.exp: successfully compiled posix threads test case
421 DUPLICATE: gdb.trace/mi-tsv-changed.exp: create delete modify: tvariable $tvar3 modified
422 DUPLICATE: gdb.trace/signal.exp: get integer valueof "counter"
423 DUPLICATE: gdb.trace/status-stop.exp: buffer_full_tstart: tstart
424 DUPLICATE: gdb.trace/status-stop.exp: tstart_tstop_tstart: tstart
425 DUPLICATE: gdb.trace/tfind.exp: 8.17: tfind none
426 DUPLICATE: gdb.trace/trace-buffer-size.exp: set tracepoint at test_function
427 DUPLICATE: gdb.trace/trace-buffer-size.exp: tstart
428 DUPLICATE: gdb.trace/trace-mt.exp: successfully compiled posix threads test case
429 DUPLICATE: gdb.trace/tspeed.exp: advance through tracing (the program is no longer running)
430 DUPLICATE: gdb.trace/tspeed.exp: advance to trace begin (the program is no longer running)
431 DUPLICATE: gdb.trace/tspeed.exp: check on trace status
432 DUPLICATE: gdb.trace/tspeed.exp: print iters = init_iters
433 DUPLICATE: gdb.trace/tspeed.exp: start trace experiment
434 FAIL: gdb.base/a2-run.exp: run "a2-run" with shell (timeout)
435 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=IN: binprelink=NO: binsepdebug=NO: binpie=NO: INNER: symbol-less: entry point reached (the program is no longer running)
436 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=IN: binprelink=NO: binsepdebug=NO: binpie=NO: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: reach
437 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=IN: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: entry point reached (the program is no longer running)
438 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=IN: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: reach
439 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=IN: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: seen displacement message as NONZERO
440 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: binprelink=NO: binsepdebug=NO: binpie=NO: INNER: symbol-less: entry point reached (the program is no longer running)
441 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: binprelink=NO: binsepdebug=NO: binpie=NO: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: reach
442 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: entry point reached (the program is no longer running)
443 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: reach
444 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: binprelink=NO: binsepdebug=NO: binpie=YES: INNER: symbol-less: reach-(_dl_debug_state|dl_main)-3: seen displacement message as NONZERO
445 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: symbol-less: ld.so exit
446 FAIL: gdb.base/break-interp.exp: ldprelink=NO: ldsepdebug=NO: symbol-less: seen displacement message as NONZERO
447 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_end
448 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_bt_start
449 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: $saw_fatal_msg
450 FAIL: gdb.base/bt-on-fatal-signal.exp: BUS: [expr $internal_error_msg_count == 2]
451 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_end
452 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_bt_start
453 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: $saw_fatal_msg
454 FAIL: gdb.base/bt-on-fatal-signal.exp: FPE: [expr $internal_error_msg_count == 2]
455 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_end
456 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_bt_start
457 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: $saw_fatal_msg
458 FAIL: gdb.base/bt-on-fatal-signal.exp: SEGV: [expr $internal_error_msg_count == 2]
459 FAIL: gdb.base/compare-sections.exp: after run to main: compare-sections
460 FAIL: gdb.base/compare-sections.exp: after run to main: compare-sections -r
461 FAIL: gdb.base/compare-sections.exp: read-only: compare-sections -r
462 FAIL: gdb.base/gdbinit-history.exp: GDBHISTFILE is empty: show commands
463 FAIL: gdb.base/gdbinit-history.exp: load default history file: show commands
464 FAIL: gdb.base/gdbinit-history.exp: load GDBHISTFILE history file: show commands
465 FAIL: gdb.base/interrupt-daemon.exp: bg: continue& (timeout)
466 FAIL: gdb.base/interrupt-daemon.exp: bg: interrupt cmd stops process (timeout)
467 FAIL: gdb.base/interrupt-daemon.exp: bg: interrupt (timeout)
468 FAIL: gdb.base/interrupt-daemon.exp: fg: ctrl-c stops process (timeout)
469 FAIL: gdb.base/share-env-with-gdbserver.exp: strange named var: print result of getenv for 'asd ='
470 FAIL: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = $TEST: testing first argument
471 FAIL: gdb.base/startup-with-shell.exp: startup_with_shell = on; run_args = *.unique-extension: first argument expanded
472 FAIL: gdb.base/with.exp: repeat: reinvoke with no previous command to relaunch
473 FAIL: gdb.cp/annota2.exp: annotate-quit
474 FAIL: gdb.cp/annota2.exp: break at main (got interactive prompt)
475 FAIL: gdb.cp/annota2.exp: continue until exit (timeout)
476 FAIL: gdb.cp/annota2.exp: delete bps
477 FAIL: gdb.cp/annota2.exp: set watch on a.x (timeout)
478 FAIL: gdb.cp/annota2.exp: watch triggered on a.x (timeout)
479 FAIL: gdb.cp/annota3.exp: continue to exit (pattern 4)
480 FAIL: gdb.cp/no-dmgl-verbose.exp: gdb_breakpoint: set breakpoint at 'f(std::string)'
481 FAIL: gdb.gdb/unittest.exp: executable loaded: maintenance selftest, failed none
482 FAIL: gdb.gdb/unittest.exp: no executable loaded: maintenance selftest, failed none
483 FAIL: gdb.mi/mi-exec-run.exp: inferior-tty=separate: mi=separate: force-fail=0: breakpoint hit reported on console (timeout)
484 FAIL: gdb.mi/mi-pending.exp: MI pending breakpoint on mi-pendshr.c:pendfunc2 if x==4 (unexpected output)
485 FAIL: gdb.server/connect-with-no-symbol-file.exp: sysroot=: action=delete: connection to GDBserver succeeded
486 FAIL: gdb.server/connect-with-no-symbol-file.exp: sysroot=: action=permission: connection to GDBserver succeeded
487 FAIL: gdb.server/connect-with-no-symbol-file.exp: sysroot=target:: action=delete: connection to GDBserver succeeded
488 FAIL: gdb.server/connect-with-no-symbol-file.exp: sysroot=target:: action=permission: connection to GDBserver succeeded
489 FAIL: gdb.threads/attach-into-signal.exp: threaded: thread apply 2 print $_siginfo.si_signo
490 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=3: created new thread
491 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=4: created new thread
492 FAIL: gdb.threads/multiple-successive-infcall.exp: thread=5: created new thread
493 FAIL: gdb.threads/process-dies-while-detaching.exp: single-process: continue: killed outside: continue
494 FAIL: gdb.threads/thread-specific-bp.exp: all-stop: continue to end (timeout)
495 FAIL: gdb.threads/tls.exp: print a_thread_local
496 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_asm_test
497 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_c_test
498 FAIL: gdb.trace/actions.exp: tfile: tracepoint on gdb_recursion_test 0
499 FAIL: gdb.trace/change-loc.exp: 1 trace: continue to marker 2
500 FAIL: gdb.trace/change-loc.exp: 1 trace: continue to marker 3
501 FAIL: gdb.trace/change-loc.exp: 1 trace: tfind frame 0
502 FAIL: gdb.trace/change-loc.exp: 1 trace: tracepoint with two locations - installed (unload)
503 FAIL: gdb.trace/change-loc.exp: 1 trace: tracepoint with two locations - pending (unload)
504 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 1 (the program is no longer running)
505 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 2 (the program is no longer running)
506 FAIL: gdb.trace/change-loc.exp: 2 ftrace: continue to marker 3 (the program is no longer running)
507 FAIL: gdb.trace/change-loc.exp: 2 ftrace: run to main (the program exited)
508 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 0
509 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 1
510 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tfind frame 2
511 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with three locations
512 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with two locations - installed (unload)
513 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tracepoint with two locations - pending (unload)
514 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tstart
515 FAIL: gdb.trace/change-loc.exp: 2 ftrace: tstop
516 FAIL: gdb.trace/change-loc.exp: 2 trace: continue to marker 2
517 FAIL: gdb.trace/change-loc.exp: 2 trace: continue to marker 3
518 FAIL: gdb.trace/change-loc.exp: 2 trace: tfind frame 2
519 FAIL: gdb.trace/change-loc.exp: 2 trace: tracepoint with two locations - installed (unload)
520 FAIL: gdb.trace/change-loc.exp: 2 trace: tracepoint with two locations - pending (unload)
521 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local char
522 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local double
523 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local float
524 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local int
525 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member char
526 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member double
527 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member float
528 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected local member int
529 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #0
530 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #1
531 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #2
532 FAIL: gdb.trace/collection.exp: collect register locals collectively: collected locarray #3
533 FAIL: gdb.trace/collection.exp: collect register locals collectively: start trace experiment
534 FAIL: gdb.trace/collection.exp: collect register locals collectively: tfind test frame
535 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local char
536 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local double
537 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local float
538 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local int
539 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member char
540 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member double
541 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member float
542 FAIL: gdb.trace/collection.exp: collect register locals individually: collected local member int
543 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #0
544 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #1
545 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #2
546 FAIL: gdb.trace/collection.exp: collect register locals individually: collected locarray #3
547 FAIL: gdb.trace/collection.exp: collect register locals individually: define actions
548 FAIL: gdb.trace/mi-trace-frame-collected.exp: tfile: -trace-frame-collected (unexpected output)
549 FAIL: gdb.trace/mi-trace-frame-collected.exp: tfile: -trace-frame-collected --var-print-values 2 --comp-print-values --simple-values --registers-format x --memory-contents (unexpected output)
550 FAIL: gdb.trace/pending.exp: ftrace resolved: (the program exited)
551 FAIL: gdb.trace/pending.exp: ftrace works: continue to marker (the program is no longer running)
552 FAIL: gdb.trace/pending.exp: ftrace works: start trace experiment
553 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 0
554 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 1
555 FAIL: gdb.trace/pending.exp: ftrace works: tfind test frame 2
556 FAIL: gdb.trace/pending.exp: ftrace works: (the program exited)
557 FAIL: gdb.trace/pending.exp: trace installed_in_trace: continue to marker 2
558 FAIL: gdb.trace/pending.exp: trace installed_in_trace: tfind test frame 0
559 FAIL: gdb.trace/tspeed.exp: advance through tracing (the program is no longer running)
560 FAIL: gdb.trace/tspeed.exp: advance through tracing (the program is no longer running)
561 FAIL: gdb.trace/tspeed.exp: advance to trace begin (the program is no longer running)
562 FAIL: gdb.trace/tspeed.exp: advance to trace begin (the program is no longer running)
563 FAIL: gdb.trace/tspeed.exp: start trace experiment
564 FAIL: gdb.trace/tspeed.exp: start trace experiment
565 FAIL: gdb.trace/unavailable.exp: collect globals: print object off: print derived_partial
566 FAIL: gdb.trace/unavailable.exp: collect globals: print object on: print derived_partial
567 FAIL: gdb.trace/unavailable.exp: collect globals: tfile: print object off: print derived_partial
568 FAIL: gdb.trace/unavailable.exp: collect globals: tfile: print object on: print derived_partial
569 FAIL: gdb.trace/unavailable.exp: unavailable locals: auto locals: info locals
570 FAIL: gdb.trace/unavailable.exp: unavailable locals: auto locals: tfile: info locals
571 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: info locals
572 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: print locd
573 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: print locf
574 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: info locals
575 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: print locd
576 FAIL: gdb.trace/unavailable.exp: unavailable locals: register locals: tfile: print locf
577 FAIL: gdb.trace/unavailable.exp: unavailable locals: static locals: info locals
578 FAIL: gdb.trace/unavailable.exp: unavailable locals: static locals: tfile: info locals
579 UNRESOLVED: gdb.base/libsegfault.exp: gdb emits custom handler warning
580 UNRESOLVED: gdb.base/readline-ask.exp: bell for more message
581 UNRESOLVED: gdb.base/symbol-without-target_section.exp: list -q main
582 UNRESOLVED: gdb.dwarf2/dw2-icc-opaque.exp: ptype p_struct
583 UNRESOLVED: gdb.threads/attach-into-signal.exp: threaded: attach (pass 2), pending signal catch
584 FAIL: gdb.arch/ftrace-insn-reloc.exp: runto: run to main
585 FAIL: gdb.multi/remove-inferiors.exp: runto: run to main
586 FAIL: gdb.threads/access-mem-running-thread-exit.exp: non-stop: second inferior: runto: run to main
587 FAIL: gdb.threads/break-while-running.exp: w/ithr: always-inserted off: non-stop: runto: run to main
588 FAIL: gdb.threads/break-while-running.exp: w/ithr: always-inserted on: non-stop: runto: run to main
589 FAIL: gdb.threads/break-while-running.exp: wo/ithr: always-inserted off: non-stop: runto: run to main
590 FAIL: gdb.threads/break-while-running.exp: wo/ithr: always-inserted on: non-stop: runto: run to main
591 FAIL: gdb.threads/gcore-stale-thread.exp: runto: run to main
592 FAIL: gdb.threads/multi-create-ns-info-thr.exp: runto: run to main
593 FAIL: gdb.threads/non-stop-fair-events.exp: runto: run to main
594 KPASS: gdb.threads/process-dies-while-detaching.exp: single-process: continue: watchpoint:sw: continue (PRMS gdb/28375)
595 FAIL: gdb.threads/thread-execl.exp: non-stop: runto: run to main
596 FAIL: gdb.threads/thread-specific-bp.exp: non-stop: runto: run to main
597 FAIL: gdb.trace/change-loc.exp: 1 ftrace: runto: run to main
598 FAIL: gdb.trace/change-loc.exp: InstallInTrace disabled: ftrace: runto: run to main
599 FAIL: gdb.trace/ftrace-lock.exp: runto: run to main
600 FAIL: gdb.trace/ftrace.exp: runto: run to main
601 FAIL: gdb.trace/pending.exp: ftrace action_resolved: runto: run to main
602 FAIL: gdb.trace/pending.exp: ftrace disconn: runto: run to main
603 FAIL: gdb.trace/pending.exp: ftrace disconn_resolved: runto: run to main
604 FAIL: gdb.trace/pending.exp: ftrace installed_in_trace: runto: run to main
605 FAIL: gdb.trace/pending.exp: ftrace resolved_in_trace: runto: run to main
606 FAIL: gdb.trace/range-stepping.exp: runto: run to main
607 FAIL: gdb.trace/trace-break.exp: runto: run to main
608 FAIL: gdb.trace/trace-condition.exp: runto: run to main
609 FAIL: gdb.trace/trace-enable-disable.exp: test_tracepoint_enable_disable ftrace: runto: run to main
610 FAIL: gdb.trace/trace-enable-disable.exp: test_tracepoint_enable_disable trace: runto: run to main
611 FAIL: gdb.trace/trace-mt.exp: runto: run to main
612 FAIL: gdb.trace/tspeed.exp: runto: run to main
613 FAIL: gdb.trace/tspeed.exp: runto: run to main
614 DUPLICATE: gdb.trace/tspeed.exp: runto: run to main
615 EOF
616
617 known_failures_file="known-failures-${target_board}"
618 grep --invert-match --fixed-strings --file="$known_failures_file" "${WORKSPACE}/results/gdb.sum" > "${WORKSPACE}/results/gdb.filtered.sum"
619
620 # For informational purposes: check if some known failure lines did not appear
621 # in the gdb.sum.
622 echo "Known failures that don't appear in gdb.sum:"
623 while read line; do
624 if ! grep --silent --fixed-strings "$line" "${WORKSPACE}/results/gdb.sum"; then
625 echo "$line"
626 fi
627 done < "$known_failures_file" > "${WORKSPACE}/results/known-failures-not-found.sum"
628
629 # Convert results to JUnit format.
630 failed_tests=0
631 sum2junit "${WORKSPACE}/results/gdb.filtered.sum" "${WORKSPACE}/results/gdb.xml" || failed_tests=1
632
633 # Clean the build directory
634 $MAKE clean
635
636 # Exit with failure if any of the tests failed
637 exit $failed_tests
638
639 # EOF
This page took 0.050572 seconds and 5 git commands to generate.