	.pushsection .init.text.rng.synth_init_or.
	.globl synth_init_or
synth_init_or:
	.popsection

	.pushsection .init.text.rng.synth_init_or.01
	/* err = 0; */
	pushq %rbp
	movq %rsp,%rbp
	pushq %rbx
	xorq %rbx,%rbx
	.popsection

	.pushsection .init.text.rng.synth_init_or.~
	.popsection

	.pushsection .init.text.rng.synth_init_or.99
	/* return err; */
	movq %rbx,%rax
	popq %rbx
	popq %rbp
	retq
	.popsection

	.pushsection .init.text.rng.synth_init_or.50
	/* err |= demo_or_1(1); */
	movl $1,%edi
	call demo_or_1
	orq %rax,%rbx
	.popsection

	.pushsection .init.text.rng.synth_init_or.50
	/* err |= demo_or_1(2); */
	movl $2,%edi
	call demo_or_1
	orq %rax,%rbx
	.popsection

	.pushsection .init.text.rng.synth_init_or.50
	/* err |= demo_or_2(); */
	call demo_or_2
	orq %rax,%rbx
	.popsection
