Skip to content

StackSlotColoring results in different order of stack slots #300

Description

@blackgeorge-boom
#include <stdio.h>

void results(char *name, char class, int n1, int n2, int n3, int niter, char *optype)
{

	printf("%c\n", class);

	if (n3 == 0) {
		long nn = n1;
		if (n2 != 0)
			nn *= n2;
		printf("%12ld\n", nn);
	}
	else
		printf("%4dx%4dx\n", n1, n2);

	printf("%12d\n", niter);
	printf("%24s\n", optype);

}

int main() {
	results("IS", 'S', 1, 64, 0, 3, "keys ranked");

	return 0;

}
make clean; make stackmaps-check -j10 OBJDUMP_FLAGS= OPT_LEVEL=-O1

WARNING: results: callsite 0, value locations 1/1 have different location offset or  different constant (-48 vs. -32)
WARNING: results: callsite 0, value locations 2/2 have different location offset or  different constant (-28 vs. -44)
WARNING: results: callsite 0, value locations 3/3 have different location offset or  different constant (-36 vs. -40)
...

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions