Most of the change is ripple effects in tests.
Details
Diff Detail
Event Timeline
Looks good, mostly a bunch of comments about how to make the tests less fragile.
test/DebugInfo/COFF/asm.ll | ||
---|---|---|
22–23 | I think this test is really supposed to be about the line table. I think we should keep the .cv_loc directive matching above, but delete all this .debug$S directive matching to make the test less fragile. See the FIXME comment below and http://llvm.org/PR18679. I think that explains why this test is here. | |
34–35 | Let's delete the relocation matching. They aren't interesting in this test. | |
83–86 | Ditto, I don't think we need x64 .debug$S assembly matching, just line table matching below. | |
test/DebugInfo/COFF/multifile.ll | ||
31–32 | This test is also entirely concerned with what happens to the line table when you use #line inside a function. I think we can do the same here: delete the .debug$S assembly matching portion and relocation entries. The FilenameSegment checks below are the interesting part. | |
test/DebugInfo/COFF/multifunction.ll | ||
66 | This is supposed to test how we emit one symbol subsection per function, so I think it's worth matching the compile info subsection. The names F1_START and F1_END were intended to refer to the symbol subsection for x, but this is actually the compile info subection now. Let's use F1_START / F1_END in place of SUBSEC_START / SUBSEC_END and use COMPILE_START / COMPILE_END here. | |
145–146 | I don't think the relocation entries are interesting anymore, let's delete them. | |
test/DebugInfo/COFF/simple.ll | ||
28 | Let's update the names to COMPILE_START/END and use F1_START/END below. |
I was going to say, the old line table tests that Timur added when CodeView support was new (asm.ll, simple.ll, multfile.ll, and multifunction.ll in rL200340) overfit our output because we didn't have a lot of confidence in our understanding of the format.
test/DebugInfo/COFF/multifunction.ll | ||
---|---|---|
66 | Yeah, duh. I realized that mistake earlier, but promptly forgot about it. |
I think this test is really supposed to be about the line table. I think we should keep the .cv_loc directive matching above, but delete all this .debug$S directive matching to make the test less fragile.
See the FIXME comment below and http://llvm.org/PR18679. I think that explains why this test is here.