[LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 (original) (raw)
[LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 - DI: Fold constant arguments into a single MDString)
Peter Zotov whitequark at whitequark.org
Thu Oct 2 16:17:26 PDT 2014
- Previous message: [LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 - DI: Fold constant arguments into a single MDString)
- Next message: [LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 - DI: Fold constant arguments into a single MDString)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 2014-10-03 03:16, Duncan P. N. Exon Smith wrote:
+whitequark
On Oct 2, 2014, at 3:48 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
-llvm-commits, +llvmdev
On Oct 2, 2014, at 2:57 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
Author: dexonsmith Date: Thu Oct 2 16:56:57 2014 New Revision: 218914 URL: http://llvm.org/viewvc/llvm-project?rev=218914&view=rev Log: DI: Fold constant arguments into a single MDString This patch addresses the first stage of PR17891 by folding constant arguments together into a single MDString. Integers are stringified and a
\0
character is used as a separator. Part of PR17891. Note: I've attached my testcases upgrade scripts to the PR. If I've just broken your out-of-tree testcases, they might help.Among other things, this commit broke the Ocaml debug info test [1]. It's not obvious to me how to fix it (I don't speak Ocaml). Anyone know what to do? (Is it reasonable for me to just XFAIL it, file a PR, and move on?) [1]: http://lab.llvm.org:8011/builders/llvm-hexagon-elf/builds/11579 I have a guess (patch below), which I'll roll into my next attempt once I've sorted out the other buildbot failures. Note that r218914 had the first hunk, but missed the second. In the meantime, if anyone that speaks Ocaml can take a look, I'd appreciate it.
LGTM.
diff --git a/test/Bindings/Ocaml/vmcore.ml b/test/Bindings/Ocaml/vmcore.ml index ea91294..da09cc7 100644 --- a/test/Bindings/Ocaml/vmcore.ml +++ b/test/Bindings/Ocaml/vmcore.ml @@ -1358,7 +1358,7 @@ let testbuilder () = (* End-of-file checks for things like metdata and attributes. * CHECK: attributes #0 = {{.}}uwtable{{.}} * CHECK: !llvm.module.flags = !{!0} - * CHECK: !0 = metadata !{i32 1, metadata !"Debug Info Version", i32 1} + * CHECK: !0 = metadata !{i32 1, metadata !"Debug Info Version", i32 2} * CHECK: !1 = metadata !{i32 1, metadata !"metadata test"} * CHECK: !2 = metadata !{i32 2, i32 3, metadata !3, metadata !3} *) @@ -1070,7 +1070,8 @@ let testbuilder () = (* !llvm.module.flags is emitted at EOF. *) let n1 = constint i32type 1 in let n2 = mdstring context "Debug Info Version" in - let md = mdnode context [| n1; n2; n1 |] in + let n3 = constint i32type 2 in + let md = mdnode context [| n1; n2; n3 |] in addnamedmetadataoperand m "llvm.module.flags" md; insist ((getnamedmetadata m "llvm.module.flags") = [| md |])
-- Peter Zotov
- Previous message: [LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 - DI: Fold constant arguments into a single MDString)
- Next message: [LLVMdev] How do I update Ocaml debug info? (was Re: [llvm] r218914 - DI: Fold constant arguments into a single MDString)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]