This is an archive of the discontinued LLVM Phabricator instance.

Changes the hardcoded loading of ARM registers to moved from gdb-remote and fixes an issue with the $g packet where the data is thrown away with size mismatch
Needs ReviewPublic

Authored by deepak2427 on Jul 25 2014, 8:55 AM.
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

Hi,

  • ARM registers were duplicated in both the ABI and the gdb-remote. This patch removes them from gdb-remote and loads them from the ABI instead.
  • The g packet response currently checks if the data size returned contains all registers. This patch fixes it such that if the data size returned is less than expected, it's still used with only those registers marked as valid.

Thanks,
Deepak Panickal

Diff Detail

Event Timeline

deepak2427 updated this revision to Diff 11882.Jul 25 2014, 8:55 AM
deepak2427 retitled this revision from to Changes the hardcoded loading of ARM registers to moved from gdb-remote and fixes an issue with the $g packet where the data is thrown away with size mismatch .
deepak2427 updated this object.
deepak2427 edited the test plan for this revision. (Show Details)
deepak2427 added a subscriber: Unknown Object (MLST).
abidh added a subscriber: abidh.Jul 25 2014, 9:33 AM

Deepak,

int items = bytesGot / reg_info->byte_size;

Is this line assuming that all registers will be of same size?

Regards,
Abid

Abid,

You're right. That should be replaced to looping through registers one by one and marking them valid.
I'll modify it.

Thanks,
Deepak Panickal