{"action":"created","comment":{"url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/comments/198275662","pull_request_review_id":132178216,"id":198275662,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDE5ODI3NTY2Mg==","diff_hunk":"@@ -349,14 +349,19 @@ droption_t<std::string> op_record_function\n  \" and function return value. We only record pointer-sized arguments and\"\n  \" return value. The trace is labeled with the function_id via an ID entry\"\n  \" prior to each set of value entries.\"\n+ \" Recording multiple functions can be achieved by using the separator\"\n+ \" \\\"\" OP_RECORD_FUNC_ITEM_SEP \"\\\" (e.g., -record_function \\\"memset|10|3\"\n+ OP_RECORD_FUNC_ITEM_SEP \"memcpy|11|3\\\"), or\"\n+ \" specifying multiple -record_function options (e.g., -record_function\"\n+ \" \\\"memset|10|3\\\" -record_function \\\"memcpy|11|3\\\").\"\n  \" Note that the provided function id should be unique, and not collide with\"\n- \" existing heap functions (see -record_heap_value ) if record_heap\"\n+ \" existing heap functions (see -record_heap_value ) if -record_heap\"","path":"clients/drcachesim/common/options.cpp","position":null,"original_position":11,"commit_id":"1943e1002ab9b7263ee800ae67d3b6b498d11b11","original_commit_id":"341f8129aa64f983bb12e76828236ce9ca11ab3b","user":{"login":"Louis-Ye","id":3772255,"node_id":"MDQ6VXNlcjM3NzIyNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/3772255?v=4","gravatar_id":"","url":"https://api.github.com/users/Louis-Ye","html_url":"https://github.com/Louis-Ye","followers_url":"https://api.github.com/users/Louis-Ye/followers","following_url":"https://api.github.com/users/Louis-Ye/following{/other_user}","gists_url":"https://api.github.com/users/Louis-Ye/gists{/gist_id}","starred_url":"https://api.github.com/users/Louis-Ye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Louis-Ye/subscriptions","organizations_url":"https://api.github.com/users/Louis-Ye/orgs","repos_url":"https://api.github.com/users/Louis-Ye/repos","events_url":"https://api.github.com/users/Louis-Ye/events{/privacy}","received_events_url":"https://api.github.com/users/Louis-Ye/received_events","type":"User","site_admin":false},"body":"Done","created_at":"2018-06-26T19:51:46Z","updated_at":"2018-06-26T19:51:47Z","html_url":"https://github.com/DynamoRIO/dynamorio/pull/3057#discussion_r198275662","pull_request_url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/comments/198275662"},"html":{"href":"https://github.com/DynamoRIO/dynamorio/pull/3057#discussion_r198275662"},"pull_request":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057"}},"in_reply_to_id":198266341},"pull_request":{"url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057","id":195689392,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk1Njg5Mzky","html_url":"https://github.com/DynamoRIO/dynamorio/pull/3057","diff_url":"https://github.com/DynamoRIO/dynamorio/pull/3057.diff","patch_url":"https://github.com/DynamoRIO/dynamorio/pull/3057.patch","issue_url":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/3057","number":3057,"state":"open","locked":false,"title":"i#3048 drcachesim record funcs: infrastructure","user":{"login":"Louis-Ye","id":3772255,"node_id":"MDQ6VXNlcjM3NzIyNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/3772255?v=4","gravatar_id":"","url":"https://api.github.com/users/Louis-Ye","html_url":"https://github.com/Louis-Ye","followers_url":"https://api.github.com/users/Louis-Ye/followers","following_url":"https://api.github.com/users/Louis-Ye/following{/other_user}","gists_url":"https://api.github.com/users/Louis-Ye/gists{/gist_id}","starred_url":"https://api.github.com/users/Louis-Ye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Louis-Ye/subscriptions","organizations_url":"https://api.github.com/users/Louis-Ye/orgs","repos_url":"https://api.github.com/users/Louis-Ye/repos","events_url":"https://api.github.com/users/Louis-Ye/events{/privacy}","received_events_url":"https://api.github.com/users/Louis-Ye/received_events","type":"User","site_admin":false},"body":"Add function traces as extended marker type. \r\nFor each invocation of the specified functions in drcashesim runtime options, the trace contains its return address, argument(s) value(s), and return value.\r\nCurrently we supports recording pointer-size arguments and return value.\r\n\r\n#3048 \r\n","created_at":"2018-06-19T01:23:39Z","updated_at":"2018-06-26T19:51:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ec8365b3283b65fa6dea110b9bf604932b2d17c0","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057/commits","review_comments_url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057/comments","review_comment_url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/comments{/number}","comments_url":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/3057/comments","statuses_url":"https://api.github.com/repos/DynamoRIO/dynamorio/statuses/1943e1002ab9b7263ee800ae67d3b6b498d11b11","head":{"label":"Louis-Ye:i3048-drcachesim-func-traces","ref":"i3048-drcachesim-func-traces","sha":"1943e1002ab9b7263ee800ae67d3b6b498d11b11","user":{"login":"Louis-Ye","id":3772255,"node_id":"MDQ6VXNlcjM3NzIyNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/3772255?v=4","gravatar_id":"","url":"https://api.github.com/users/Louis-Ye","html_url":"https://github.com/Louis-Ye","followers_url":"https://api.github.com/users/Louis-Ye/followers","following_url":"https://api.github.com/users/Louis-Ye/following{/other_user}","gists_url":"https://api.github.com/users/Louis-Ye/gists{/gist_id}","starred_url":"https://api.github.com/users/Louis-Ye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Louis-Ye/subscriptions","organizations_url":"https://api.github.com/users/Louis-Ye/orgs","repos_url":"https://api.github.com/users/Louis-Ye/repos","events_url":"https://api.github.com/users/Louis-Ye/events{/privacy}","received_events_url":"https://api.github.com/users/Louis-Ye/received_events","type":"User","site_admin":false},"repo":{"id":137128682,"node_id":"MDEwOlJlcG9zaXRvcnkxMzcxMjg2ODI=","name":"dynamorio","full_name":"Louis-Ye/dynamorio","owner":{"login":"Louis-Ye","id":3772255,"node_id":"MDQ6VXNlcjM3NzIyNTU=","avatar_url":"https://avatars1.githubusercontent.com/u/3772255?v=4","gravatar_id":"","url":"https://api.github.com/users/Louis-Ye","html_url":"https://github.com/Louis-Ye","followers_url":"https://api.github.com/users/Louis-Ye/followers","following_url":"https://api.github.com/users/Louis-Ye/following{/other_user}","gists_url":"https://api.github.com/users/Louis-Ye/gists{/gist_id}","starred_url":"https://api.github.com/users/Louis-Ye/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Louis-Ye/subscriptions","organizations_url":"https://api.github.com/users/Louis-Ye/orgs","repos_url":"https://api.github.com/users/Louis-Ye/repos","events_url":"https://api.github.com/users/Louis-Ye/events{/privacy}","received_events_url":"https://api.github.com/users/Louis-Ye/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Louis-Ye/dynamorio","description":"Dynamic Instrumentation Tool Platform","fork":true,"url":"https://api.github.com/repos/Louis-Ye/dynamorio","forks_url":"https://api.github.com/repos/Louis-Ye/dynamorio/forks","keys_url":"https://api.github.com/repos/Louis-Ye/dynamorio/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Louis-Ye/dynamorio/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Louis-Ye/dynamorio/teams","hooks_url":"https://api.github.com/repos/Louis-Ye/dynamorio/hooks","issue_events_url":"https://api.github.com/repos/Louis-Ye/dynamorio/issues/events{/number}","events_url":"https://api.github.com/repos/Louis-Ye/dynamorio/events","assignees_url":"https://api.github.com/repos/Louis-Ye/dynamorio/assignees{/user}","branches_url":"https://api.github.com/repos/Louis-Ye/dynamorio/branches{/branch}","tags_url":"https://api.github.com/repos/Louis-Ye/dynamorio/tags","blobs_url":"https://api.github.com/repos/Louis-Ye/dynamorio/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Louis-Ye/dynamorio/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Louis-Ye/dynamorio/git/refs{/sha}","trees_url":"https://api.github.com/repos/Louis-Ye/dynamorio/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Louis-Ye/dynamorio/statuses/{sha}","languages_url":"https://api.github.com/repos/Louis-Ye/dynamorio/languages","stargazers_url":"https://api.github.com/repos/Louis-Ye/dynamorio/stargazers","contributors_url":"https://api.github.com/repos/Louis-Ye/dynamorio/contributors","subscribers_url":"https://api.github.com/repos/Louis-Ye/dynamorio/subscribers","subscription_url":"https://api.github.com/repos/Louis-Ye/dynamorio/subscription","commits_url":"https://api.github.com/repos/Louis-Ye/dynamorio/commits{/sha}","git_commits_url":"https://api.github.com/repos/Louis-Ye/dynamorio/git/commits{/sha}","comments_url":"https://api.github.com/repos/Louis-Ye/dynamorio/comments{/number}","issue_comment_url":"https://api.github.com/repos/Louis-Ye/dynamorio/issues/comments{/number}","contents_url":"https://api.github.com/repos/Louis-Ye/dynamorio/contents/{+path}","compare_url":"https://api.github.com/repos/Louis-Ye/dynamorio/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Louis-Ye/dynamorio/merges","archive_url":"https://api.github.com/repos/Louis-Ye/dynamorio/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Louis-Ye/dynamorio/downloads","issues_url":"https://api.github.com/repos/Louis-Ye/dynamorio/issues{/number}","pulls_url":"https://api.github.com/repos/Louis-Ye/dynamorio/pulls{/number}","milestones_url":"https://api.github.com/repos/Louis-Ye/dynamorio/milestones{/number}","notifications_url":"https://api.github.com/repos/Louis-Ye/dynamorio/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Louis-Ye/dynamorio/labels{/name}","releases_url":"https://api.github.com/repos/Louis-Ye/dynamorio/releases{/id}","deployments_url":"https://api.github.com/repos/Louis-Ye/dynamorio/deployments","created_at":"2018-06-12T21:16:52Z","updated_at":"2018-06-22T21:22:52Z","pushed_at":"2018-06-26T19:50:11Z","git_url":"git://github.com/Louis-Ye/dynamorio.git","ssh_url":"git@github.com:Louis-Ye/dynamorio.git","clone_url":"https://github.com/Louis-Ye/dynamorio.git","svn_url":"https://github.com/Louis-Ye/dynamorio","homepage":null,"size":46302,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"DynamoRIO:master","ref":"master","sha":"68e3a7235af6c981c3d1c3453502f64578a47064","user":{"login":"DynamoRIO","id":9010155,"node_id":"MDEyOk9yZ2FuaXphdGlvbjkwMTAxNTU=","avatar_url":"https://avatars2.githubusercontent.com/u/9010155?v=4","gravatar_id":"","url":"https://api.github.com/users/DynamoRIO","html_url":"https://github.com/DynamoRIO","followers_url":"https://api.github.com/users/DynamoRIO/followers","following_url":"https://api.github.com/users/DynamoRIO/following{/other_user}","gists_url":"https://api.github.com/users/DynamoRIO/gists{/gist_id}","starred_url":"https://api.github.com/users/DynamoRIO/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DynamoRIO/subscriptions","organizations_url":"https://api.github.com/users/DynamoRIO/orgs","repos_url":"https://api.github.com/users/DynamoRIO/repos","events_url":"https://api.github.com/users/DynamoRIO/events{/privacy}","received_events_url":"https://api.github.com/users/DynamoRIO/received_events","type":"Organization","site_admin":false},"repo":{"id":27242935,"node_id":"MDEwOlJlcG9zaXRvcnkyNzI0MjkzNQ==","name":"dynamorio","full_name":"DynamoRIO/dynamorio","owner":{"login":"DynamoRIO","id":9010155,"node_id":"MDEyOk9yZ2FuaXphdGlvbjkwMTAxNTU=","avatar_url":"https://avatars2.githubusercontent.com/u/9010155?v=4","gravatar_id":"","url":"https://api.github.com/users/DynamoRIO","html_url":"https://github.com/DynamoRIO","followers_url":"https://api.github.com/users/DynamoRIO/followers","following_url":"https://api.github.com/users/DynamoRIO/following{/other_user}","gists_url":"https://api.github.com/users/DynamoRIO/gists{/gist_id}","starred_url":"https://api.github.com/users/DynamoRIO/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DynamoRIO/subscriptions","organizations_url":"https://api.github.com/users/DynamoRIO/orgs","repos_url":"https://api.github.com/users/DynamoRIO/repos","events_url":"https://api.github.com/users/DynamoRIO/events{/privacy}","received_events_url":"https://api.github.com/users/DynamoRIO/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/DynamoRIO/dynamorio","description":"Dynamic Instrumentation Tool Platform","fork":false,"url":"https://api.github.com/repos/DynamoRIO/dynamorio","forks_url":"https://api.github.com/repos/DynamoRIO/dynamorio/forks","keys_url":"https://api.github.com/repos/DynamoRIO/dynamorio/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DynamoRIO/dynamorio/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DynamoRIO/dynamorio/teams","hooks_url":"https://api.github.com/repos/DynamoRIO/dynamorio/hooks","issue_events_url":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/events{/number}","events_url":"https://api.github.com/repos/DynamoRIO/dynamorio/events","assignees_url":"https://api.github.com/repos/DynamoRIO/dynamorio/assignees{/user}","branches_url":"https://api.github.com/repos/DynamoRIO/dynamorio/branches{/branch}","tags_url":"https://api.github.com/repos/DynamoRIO/dynamorio/tags","blobs_url":"https://api.github.com/repos/DynamoRIO/dynamorio/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DynamoRIO/dynamorio/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DynamoRIO/dynamorio/git/refs{/sha}","trees_url":"https://api.github.com/repos/DynamoRIO/dynamorio/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DynamoRIO/dynamorio/statuses/{sha}","languages_url":"https://api.github.com/repos/DynamoRIO/dynamorio/languages","stargazers_url":"https://api.github.com/repos/DynamoRIO/dynamorio/stargazers","contributors_url":"https://api.github.com/repos/DynamoRIO/dynamorio/contributors","subscribers_url":"https://api.github.com/repos/DynamoRIO/dynamorio/subscribers","subscription_url":"https://api.github.com/repos/DynamoRIO/dynamorio/subscription","commits_url":"https://api.github.com/repos/DynamoRIO/dynamorio/commits{/sha}","git_commits_url":"https://api.github.com/repos/DynamoRIO/dynamorio/git/commits{/sha}","comments_url":"https://api.github.com/repos/DynamoRIO/dynamorio/comments{/number}","issue_comment_url":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/comments{/number}","contents_url":"https://api.github.com/repos/DynamoRIO/dynamorio/contents/{+path}","compare_url":"https://api.github.com/repos/DynamoRIO/dynamorio/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DynamoRIO/dynamorio/merges","archive_url":"https://api.github.com/repos/DynamoRIO/dynamorio/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DynamoRIO/dynamorio/downloads","issues_url":"https://api.github.com/repos/DynamoRIO/dynamorio/issues{/number}","pulls_url":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls{/number}","milestones_url":"https://api.github.com/repos/DynamoRIO/dynamorio/milestones{/number}","notifications_url":"https://api.github.com/repos/DynamoRIO/dynamorio/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DynamoRIO/dynamorio/labels{/name}","releases_url":"https://api.github.com/repos/DynamoRIO/dynamorio/releases{/id}","deployments_url":"https://api.github.com/repos/DynamoRIO/dynamorio/deployments","created_at":"2014-11-27T22:08:34Z","updated_at":"2018-06-26T17:11:58Z","pushed_at":"2018-06-26T19:50:13Z","git_url":"git://github.com/DynamoRIO/dynamorio.git","ssh_url":"git@github.com:DynamoRIO/dynamorio.git","clone_url":"https://github.com/DynamoRIO/dynamorio.git","svn_url":"https://github.com/DynamoRIO/dynamorio","homepage":null,"size":46360,"stargazers_count":665,"watchers_count":665,"language":"C","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":197,"mirror_url":null,"archived":false,"open_issues_count":1026,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":197,"open_issues":1026,"watchers":665,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057"},"html":{"href":"https://github.com/DynamoRIO/dynamorio/pull/3057"},"issue":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/3057"},"comments":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/issues/3057/comments"},"review_comments":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057/comments"},"review_comment":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/pulls/3057/commits"},"statuses":{"href":"https://api.github.com/repos/DynamoRIO/dynamorio/statuses/1943e1002ab9b7263ee800ae67d3b6b498d11b11"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"Louis-Ye"}}