GC Roots misunderstanding?
I know that Roots are : static fields method parameters local fielfs f-queue which also holds a pointer to the " going to be finilized" objects cpu registers <=??? Now lets talk about registers. the code whch they can contain is like : mov bx, 0034h ; bx = 52 (stored in 16 bits) mov cl, bl ; cl = lower 8-bits of bx mov eax, ecx call print_int but wait ! If im not mistaken , this is the actually code which was Holding those those static , local and parameters - from the first place ! So why to write this TWICE ? ( or from another direction ?) Why to write ( for example ) Foo f = new Foo(); *