Skip to content

AMD64 structs in registers problem #7

@GoogleCodeExporter

Description

@GoogleCodeExporter
compare output of running daikon/tests/kvasir/tests/TypedefTest on x86 vs. 
amd64.  The later passes small structs in registers.  Current implementation of 
kvasir only assigns a single value tag field to an entire register.  Hence, 
when the struct is loaded into the register to pass as argument we mark all 
struct fields that happen to map to the same register as having an interaction 
when in fact they do not.  Test case needs to be modifed back to have first 
struct element (a) being an int instead of a long.  decls output will then show 
a and b in same compare set on amd64 but in separate sets on x86 (correctly).

This is a serious problem, but is part of the current design.  Fix will be a 
major work item.




Original issue reported on code.google.com by mar...@cs.washington.edu on 5 Aug 2013 at 10:22

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions