Codegen: Align representation of stackmap with SpiderMonkey

This commit aligns the representation of stackmaps to be the same
as Spidermonkey's by:
 * Reversing the order of the bitmap from low addresses to high addresses
 * Including incoming stack arguments
 * Excluding outgoing stack arguments

Additionally, some accessor functions were added to allow Spidermonkey
to access the internals of the bitmap.
This commit is contained in:
Ryan Hunt
2020-01-06 15:48:12 -06:00
parent bbc0a328c7
commit 946251e655
7 changed files with 85 additions and 36 deletions

View File

@@ -142,7 +142,10 @@ impl SubTest for TestBinEmit {
.values()
.map(|slot| slot.offset.unwrap())
.min();
func.stack_slots.frame_size = min_offset.map(|off| (-off) as u32);
func.stack_slots.layout_info = min_offset.map(|off| ir::StackLayoutInfo {
frame_size: (-off) as u32,
inbound_args_size: 0,
});
let opt_level = isa.flags().opt_level();