================ @@ -0,0 +1,100 @@ +; RUN: llc -mcpu=mvp -filetype=asm %s -mattr=+branch-hinting -wasm-branch-prob-high=.5 -wasm-branch-prob-low=0.5 -o - | FileCheck --check-prefixes=C1 %s +; RUN: llc -mcpu=mvp -filetype=asm %s -mattr=+branch-hinting -wasm-branch-prob-high=.76 -wasm-branch-prob-low=0 -o - | FileCheck --check-prefixes=C2 %s +; RUN: llc -mcpu=mvp -filetype=asm %s -mattr=+branch-hinting -wasm-branch-prob-high=.75 -wasm-branch-prob-low=0 -o - | FileCheck --check-prefixes=C3 %s + +; C1: .section .custom_section.target_features,"",@ +; C1-NEXT: .int8 1 +; C1-NEXT: .int8 43 +; C1-NEXT: .int8 14 +; C1-NEXT: .ascii "branch-hinting" +; C1-NEXT: .section .text.test2,"",@ +; C1: .section .custom_section.metadata.code.branch_hint,"",@ +; C1-NEXT: .int8 3 +; C1-DAG: .uleb128 test0@FUNCINDEX ---------------- Lukasdoe wrote:
Sorry for the long downtime. This does assemble correctly, since during parsing of the assembly (for assembling to an object file in `llvm-mc`), the `AsmParser::parseDirectiveLEB128` function calls `MCWasmStreamer::emitULEB128Value` to emit the parsed uleb. This causes the uleb to be padded correctly. So all-in-all: you are correct: this is what the asm backend change actually does. The ref is turned in a `MCExpr::SymbolRef` during parsing, which causes it to be padded correctly. https://github.com/llvm/llvm-project/pull/146230 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
