[LLVMbugs] [Bug 4937] New: bugpoint doesn't binary search with run-custom
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Wed Sep 9 11:43:39 PDT 2009
http://llvm.org/bugs/show_bug.cgi?id=4937
Summary: bugpoint doesn't binary search with run-custom
Product: new-bugs
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: edwintorok at gmail.com
CC: llvmbugs at cs.uiuc.edu, nlewycky at google.com
Running bugpoint on the bugpoint-passinput.bc from
http://www.fileden.com/files/2009/9/1/2561232/bugpoint-passinput.bc which is
3.5M results a bugpoint-tooptimize.bc that is 3.4M.
I think that if bugpoint did a binary search on the functions it could narrow
it down more.
My custom.sh looks like this:
#!/bin/sh
llvm-dis $1 -o -|grep extractvalue|grep undef >/dev/null
test $? -eq 0 && exit 1
echo "OK"
exit 0
Basically -ipsccp transforms extractvalue %949, 1 into extractvalue undef, 1,
and I want to reduce a testcase for that. Thus if there is an
extractvalue..undef in the output, then its bugged.
$ bugpoint -disable-loop-extraction -mlimit=0 -ipsccp --append-exit-code
-run-custom -safe-run-custom -exec-command=./custom.sh bugpoint-passinput.bc
...
override triple is
Read input file : 'bugpoint-passinput.bc'
*** All input ok
Running selected passes on program to test for crash: override triple is
Success!
Initializing execution environment: Found command in: ./custom.sh
Running the code generator to test for a crash:
Generating reference output from raw program:
Reference output is: bugpoint.reference.out-sxXqxN
*** Checking the code generator...
*** Output matches: Debugging miscompilation!
Checking to see if '' compiles correctly: override triple is
yup.
Checking to see if '-ipsccp' compiles correctly: override triple is
nope.
*** Found miscompiling pass: -ipsccp
Emitted bitcode to 'bugpoint-passinput.bc'
*** You can reproduce the problem with: opt bugpoint-passinput.bc -ipsccp
Checking to see if the program is misoptimized when these functions are run
through the pass: _ZN4llvm17AsmMatcherEmitter3runERNS_11raw_ostreamE
_GLOBAL__I__ZN4llvm17AsmMatcherEmitter3runERNS_11raw_ostreamE
_ZNK12_GLOBAL__N_19ClassInfo10isSubsetOfERKS0_
_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISt3setIPN4llvm6RecordESt4lessIS3_ESaIS3_EES7_St9_IdentityIS7_ES4_IS7_ESaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordESt4pairIKS2_St3setIS2_St4lessIS2_ESaIS2_EEESt10_Select1stISA_ES7_SaISA_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISt3setIPN4llvm6RecordESt4lessIS3_ESaIS3_EESt4pairIKS7_PN12_GLOBAL__N_19ClassInfoEESt10_Select1stISD_ES4_IS7_ESaISD_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordESt4pairIKS2_PN12_GLOBAL__N_19ClassInfoEESt10_Select1stIS8_ESt4lessIS2_ESaIS8_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISsSt4pairIKSsPN12_GLOBAL__N_19ClassInfoEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base...
<1642 total>
Optimizing functions being tested: override triple is
done.
Checking to see if the merged program executes correctly: yup.
*** The following functions are being miscompiled:
_ZN4llvm17AsmMatcherEmitter3runERNS_11raw_ostreamE
_GLOBAL__I__ZN4llvm17AsmMatcherEmitter3runERNS_11raw_ostreamE
_ZNK12_GLOBAL__N_19ClassInfo10isSubsetOfERKS0_
_ZNSt8_Rb_treeISsSsSt9_IdentityISsESt4lessISsESaISsEE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordES2_St9_IdentityIS2_ESt4lessIS2_ESaIS2_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISt3setIPN4llvm6RecordESt4lessIS3_ESaIS3_EES7_St9_IdentityIS7_ES4_IS7_ESaIS7_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordESt4pairIKS2_St3setIS2_St4lessIS2_ESaIS2_EEESt10_Select1stISA_ES7_SaISA_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISt3setIPN4llvm6RecordESt4lessIS3_ESaIS3_EESt4pairIKS7_PN12_GLOBAL__N_19ClassInfoEESt10_Select1stISD_ES4_IS7_ESaISD_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeIPN4llvm6RecordESt4pairIKS2_PN12_GLOBAL__N_19ClassInfoEESt10_Select1stIS8_ESt4lessIS2_ESaIS8_EE7_S_leftEPSt18_Rb_tree_node_base
_ZNSt8_Rb_treeISsSt4pairIKSsPN12_GLOBAL__N_19ClassInfoEESt10_Select1stIS5_ESt4lessISsESaIS5_EE7_S_leftEPSt18_Rb_tree_node_base...
<1642 total>
Checking to see if the program is misoptimized when all blocks are extracted.
override triple is
Optimizing functions being tested: override triple is
done.
Checking to see if the merged program executes correctly: yup.
Checking to see if the program is misoptimized when all but these 63372 blocks
are extracted: entry bb2.i invcont8 bb12 bb.i.i363 bb.i.i.i364 bb1.i.i.i365
_ZN9__gnu_cxxL27__exchange_and_add_dispatchEPii.exit.i.i366 bb2.i.i367 bb17 ...
override triple is
Optimizing functions being tested: override triple is
done.
Checking to see if the merged program executes correctly: yup.
Outputting reduced bitcode files which expose the problem:
Non-optimized portion: Emitted bitcode to 'bugpoint-tonotoptimize.bc'
Portion that is input to optimizer: Emitted bitcode to
'bugpoint-tooptimize.bc'
*** You can reproduce the problem with: opt bugpoint-tooptimize.bc -ipsccp
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list