#364: ptr_alignment 8 not honored, sparc 64bit broken
---------------------+------------------------------------------------------
 Reporter:  rurban   |       Owner:  rurban  
     Type:  bug      |      Status:  assigned
 Priority:  blocker  |   Milestone:  1.0     
Component:  core     |     Version:  trunk   
 Severity:  release  |    Keywords:          
     Lang:           |       Patch:          
 Platform:  other    |  
---------------------+------------------------------------------------------

Comment(by rurban):

 I analyzed this further, but cannot test this.
 See http://use.perl.org/~rurban/journal/38522

 I believe 8-byte ptr_alignment cannot be supported as now, because we do
 not enforce strict pairs of 4-byte data, as integer and opcodes. There can
 be an uneven number, and then we get a SIGBUS.

 We enforce 16-byte aligment at the start and end of segments and at end of
 strings, but not with integer and opcodes.

 So we should update the Sparc64 hints to use -xmemalign=4i, this is the
 best we can guarantee (untested).

 For the future we should discuss enforcing writing pairs of 4-byte data or
 padding uneven ending 4-byte data with a pad of one byte.

 It should also be tested if the pf_items (unsigned char*)stream++ are
 valid with Sparc64.

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/364#comment:7>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to