[PATCH] D71681: [WIP] [WebAssembly] Track frame registers through VReg and local allocation

Derek Schuff via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 7 17:44:14 PST 2020


dschuff marked 2 inline comments as done.
dschuff added a subscriber: tlively.
dschuff added inline comments.


================
Comment at: llvm/test/CodeGen/WebAssembly/multi-return.ll:1
 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
 ; RUN: llc < %s -asm-verbose=false -wasm-disable-explicit-locals -wasm-keep-registers | FileCheck %s
----------------
@tlively I re-ran `update_llc_test_checks.py` over this file and it removed all the CHECKs entirely (best kind of correct...). Am I holding it wrong?


================
Comment at: llvm/test/CodeGen/WebAssembly/multi-return.ll:15
 ; CHECK: call    	return_multi_multi
-; CHECK: i64.load	$0=, 8($1)
-; CHECK: local.copy	$push8=, $0
+; CHECK: i64.load	$[[RV:[0-9]+]]=, 8(${{[0-9]+}})
+; CHECK: local.copy	$push8=, $[[RV]]
----------------
The reason all the tests in this file change is because I exempted the frame registers from OptimizeLiveIntervals.
An alternative to just updating it would be to do what I did for the first 2 tests and use symbolic variables for the registers. @tlively are these reasonable names? Are these exactly the correct CHECKs? (It's slightly non-obvious exactly what these are checking)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71681/new/

https://reviews.llvm.org/D71681





More information about the llvm-commits mailing list