From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31620 invoked by alias); 20 Apr 2016 13:48:36 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 31519 invoked by uid 89); 20 Apr 2016 13:48:35 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=ubizjak@gmail.com, ubizjakgmailcom, Julia, julia X-HELO: mga04.intel.com Received: from mga04.intel.com (HELO mga04.intel.com) (192.55.52.120) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 20 Apr 2016 13:48:25 +0000 Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP; 20 Apr 2016 06:48:25 -0700 X-ExtLoop1: 1 Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by fmsmga002.fm.intel.com with ESMTP; 20 Apr 2016 06:48:23 -0700 Received: from fmsmsx112.amr.corp.intel.com (10.18.116.6) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 20 Apr 2016 06:48:23 -0700 Received: from cdsmsx151.ccr.corp.intel.com (172.17.4.38) by FMSMSX112.amr.corp.intel.com (10.18.116.6) with Microsoft SMTP Server (TLS) id 14.3.248.2; Wed, 20 Apr 2016 06:48:23 -0700 Received: from cdsmsx101.ccr.corp.intel.com ([169.254.1.24]) by CDSMSX151.ccr.corp.intel.com ([169.254.3.55]) with mapi id 14.03.0248.002; Wed, 20 Apr 2016 21:48:19 +0800 From: "Koval, Julia" To: "gcc-patches@gcc.gnu.org" CC: "Lu, Hongjiu" , "vaalfreja@gmail.com" , "ubizjak@gmail.com" , "law@redhat.com" , "Zamyatin, Igor" Subject: RE: [PATCH] x86 interrupt attribute patch [1/2] Date: Wed, 20 Apr 2016 13:48:00 -0000 Message-ID: <4E89A029A0F8D443B436A5167BA3C53F03CFFF4E@CDSMSX101.ccr.corp.intel.com> x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZjQ3YzEyYTItYTRhMi00MzkwLWE5MzYtOGJkMzAyNjFmYWM3IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6InloSlJkaDh5Q0NJbHcrQTI2QWZuQUVjdFwvZUNjWkE2M3orK1JrajAwTklVPSJ9 x-ctpclassification: CTP_IC Content-Type: multipart/mixed; boundary="_002_4E89A029A0F8D443B436A5167BA3C53F03CFFF4ECDSMSX101ccrcor_" MIME-Version: 1.0 X-SW-Source: 2016-04/txt/msg01074.txt.bz2 --_002_4E89A029A0F8D443B436A5167BA3C53F03CFFF4ECDSMSX101ccrcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 1959 Sorry, here is the right patch. -----Original Message----- From: Koval, Julia=20 Sent: Wednesday, April 20, 2016 4:42 PM To: 'gcc-patches@gcc.gnu.org' Cc: Lu, Hongjiu ; 'vaalfreja@gmail.com' ; 'ubizjak@gmail.com' ; 'law@redhat.com' ; Zamyatin, Igor Subject: [PATCH] x86 interrupt attribute patch [1/2] Hi, Here is the new version of interrupt attribute patch. Bootstraped/regtested= for Linux/x86_64. Ok for trunk? =20=20=20=20 Update TARGET_FUNCTION_INCOMING_ARG documentation On x86, interrupt handlers are only called by processors which push interrupt data onto stack at the address where the normal return address is. Since interrupt handlers must access interrupt data via pointers so that they can update interrupt data, the pointer argument is passed as "argument pointer - word". TARGET_FUNCTION_INCOMING_ARG defines how callee sees its argument. Normally it returns REG, NULL, or CONST_INT. This patch adds arbitrary address computation based on hard register, which can be forced into a register, to the list. When copying an incoming argument onto stack, assign_parm_setup_stack has: if (argument in memory) copy argument in memory to stack else move argument to stack Since an arbitrary address computation may be passed as an argument, we change it to: if (argument in memory) copy argument in memory to stack else { if (argument isn't in register) force argument into a register move argument to stack } * function.c (assign_parm_setup_stack): Force source into a register if needed. * target.def (function_incoming_arg): Update documentation to allow arbitrary address computation based on hard register. * doc/tm.texi: Regenerated. --_002_4E89A029A0F8D443B436A5167BA3C53F03CFFF4ECDSMSX101ccrcor_ Content-Type: text/plain; name="patch.txt" Content-Description: patch.txt Content-Disposition: attachment; filename="patch.txt"; size=3658; creation-date="Wed, 20 Apr 2016 13:47:57 GMT"; modification-date="Wed, 20 Apr 2016 13:47:57 GMT" Content-Transfer-Encoding: base64 Content-length: 4962 Y29tbWl0IGJlMzRmNWU0ZTc0MTdkNDI2ZDJiMzUyMjhlYWM1MzEwNTI1Y2Nl ODIKQXV0aG9yOiBILkouIEx1IDxoamwudG9vbHNAZ21haWwuY29tPgpEYXRl OiAgIEZyaSBGZWIgNSAwNDo0MzoxNSAyMDE2IC0wODAwCgogICAgVXBkYXRl IFRBUkdFVF9GVU5DVElPTl9JTkNPTUlOR19BUkcgZG9jdW1lbnRhdGlvbgog ICAgCiAgICBPbiB4ODYsIGludGVycnVwdCBoYW5kbGVycyBhcmUgb25seSBj YWxsZWQgYnkgcHJvY2Vzc29ycyB3aGljaCBwdXNoCiAgICBpbnRlcnJ1cHQg ZGF0YSBvbnRvIHN0YWNrIGF0IHRoZSBhZGRyZXNzIHdoZXJlIHRoZSBub3Jt YWwgcmV0dXJuIGFkZHJlc3MKICAgIGlzLiAgU2luY2UgaW50ZXJydXB0IGhh bmRsZXJzIG11c3QgYWNjZXNzIGludGVycnVwdCBkYXRhIHZpYSBwb2ludGVy cyBzbwogICAgdGhhdCB0aGV5IGNhbiB1cGRhdGUgaW50ZXJydXB0IGRhdGEs IHRoZSBwb2ludGVyIGFyZ3VtZW50IGlzIHBhc3NlZCBhcwogICAgImFyZ3Vt ZW50IHBvaW50ZXIgLSB3b3JkIi4KICAgIAogICAgVEFSR0VUX0ZVTkNUSU9O X0lOQ09NSU5HX0FSRyBkZWZpbmVzIGhvdyBjYWxsZWUgc2VlcyBpdHMgYXJn dW1lbnQuCiAgICBOb3JtYWxseSBpdCByZXR1cm5zIFJFRywgTlVMTCwgb3Ig Q09OU1RfSU5ULiAgVGhpcyBwYXRjaCBhZGRzIGFyYml0cmFyeQogICAgYWRk cmVzcyBjb21wdXRhdGlvbiBiYXNlZCBvbiBoYXJkIHJlZ2lzdGVyLCB3aGlj aCBjYW4gYmUgZm9yY2VkIGludG8gYQogICAgcmVnaXN0ZXIsIHRvIHRoZSBs aXN0LgogICAgCiAgICBXaGVuIGNvcHlpbmcgYW4gaW5jb21pbmcgYXJndW1l bnQgb250byBzdGFjaywgYXNzaWduX3Bhcm1fc2V0dXBfc3RhY2sKICAgIGhh czoKICAgIAogICAgaWYgKGFyZ3VtZW50IGluIG1lbW9yeSkKICAgICAgY29w eSBhcmd1bWVudCBpbiBtZW1vcnkgdG8gc3RhY2sKICAgIGVsc2UKICAgICAg bW92ZSBhcmd1bWVudCB0byBzdGFjawogICAgCiAgICBTaW5jZSBhbiBhcmJp dHJhcnkgYWRkcmVzcyBjb21wdXRhdGlvbiBtYXkgYmUgcGFzc2VkIGFzIGFu IGFyZ3VtZW50LCB3ZQogICAgY2hhbmdlIGl0IHRvOgogICAgCiAgICBpZiAo YXJndW1lbnQgaW4gbWVtb3J5KQogICAgICBjb3B5IGFyZ3VtZW50IGluIG1l bW9yeSB0byBzdGFjawogICAgZWxzZQogICAgICB7CiAgICAgICAgaWYgKGFy Z3VtZW50IGlzbid0IGluIHJlZ2lzdGVyKQogICAgICAgICAgZm9yY2UgYXJn dW1lbnQgaW50byBhIHJlZ2lzdGVyCiAgICAgICAgbW92ZSBhcmd1bWVudCB0 byBzdGFjawogICAgICB9CiAgICAKICAgIAkqIGZ1bmN0aW9uLmMgKGFzc2ln bl9wYXJtX3NldHVwX3N0YWNrKTogRm9yY2Ugc291cmNlIGludG8gYQogICAg CXJlZ2lzdGVyIGlmIG5lZWRlZC4KICAgIAkqIHRhcmdldC5kZWYgKGZ1bmN0 aW9uX2luY29taW5nX2FyZyk6IFVwZGF0ZSBkb2N1bWVudGF0aW9uIHRvCiAg ICAJYWxsb3cgYXJiaXRyYXJ5IGFkZHJlc3MgY29tcHV0YXRpb24gYmFzZWQg b24gaGFyZCByZWdpc3Rlci4KICAgIAkqIGRvYy90bS50ZXhpOiBSZWdlbmVy YXRlZC4KCmRpZmYgLS1naXQgYS9nY2MvZG9jL3RtLnRleGkgYi9nY2MvZG9j L3RtLnRleGkKaW5kZXggNzQ1OTEwZi4uODI2ZjhmYiAxMDA2NDQKLS0tIGEv Z2NjL2RvYy90bS50ZXhpCisrKyBiL2djYy9kb2MvdG0udGV4aQpAQCAtMzk0 OSw2ICszOTQ5LDEwIEBAIHdoaWNoIHRoZSBjYWxsZXIgcGFzc2VzIHRoZSB2 YWx1ZSwgYW5kCiBmYXNoaW9uIHRvIHRlbGwgdGhlIGZ1bmN0aW9uIGJlaW5n IGNhbGxlZCB3aGVyZSB0aGUgYXJndW1lbnRzIHdpbGwKIGFycml2ZS4KIAor QGNvZGV7VEFSR0VUX0ZVTkNUSU9OX0lOQ09NSU5HX0FSR30gY2FuIGFsc28g cmV0dXJuIGFyYml0cmFyeSBhZGRyZXNzCitjb21wdXRhdGlvbiB1c2luZyBo YXJkIHJlZ2lzdGVyLCB3aGljaCBjYW4gYmUgZm9yY2VkIGludG8gYSByZWdp c3RlciwKK3NvIHRoYXQgaXQgY2FuIGJlIHVzZWQgdG8gcGFzcyBzcGVjaWFs IGFyZ3VtZW50cy4KKwogSWYgQGNvZGV7VEFSR0VUX0ZVTkNUSU9OX0lOQ09N SU5HX0FSR30gaXMgbm90IGRlZmluZWQsCiBAY29kZXtUQVJHRVRfRlVOQ1RJ T05fQVJHfSBzZXJ2ZXMgYm90aCBwdXJwb3Nlcy4KIEBlbmQgZGVmdHlwZWZu CmRpZmYgLS1naXQgYS9nY2MvZnVuY3Rpb24uYyBiL2djYy9mdW5jdGlvbi5j CmluZGV4IDFhYzhlMjYuLmM0MmU4NjUgMTAwNjQ0Ci0tLSBhL2djYy9mdW5j dGlvbi5jCisrKyBiL2djYy9mdW5jdGlvbi5jCkBAIC0zNDY2LDcgKzM0NjYs MTEgQEAgYXNzaWduX3Bhcm1fc2V0dXBfc3RhY2sgKHN0cnVjdCBhc3NpZ25f cGFybV9kYXRhX2FsbCAqYWxsLCB0cmVlIHBhcm0sCiAJCQkgICBCTE9DS19P UF9OT1JNQUwpOwogCX0KICAgICAgIGVsc2UKLQllbWl0X21vdmVfaW5zbiAo ZGVzdCwgc3JjKTsKKwl7CisJICBpZiAoIVJFR19QIChzcmMpKQorCSAgICBz cmMgPSBmb3JjZV9yZWcgKEdFVF9NT0RFIChzcmMpLCBzcmMpOworCSAgZW1p dF9tb3ZlX2luc24gKGRlc3QsIHNyYyk7CisJfQogICAgIH0KIAogICBpZiAo dG9fY29udmVyc2lvbikKZGlmZiAtLWdpdCBhL2djYy90YXJnZXQuZGVmIGIv Z2NjL3RhcmdldC5kZWYKaW5kZXggMjBmMmIzMi4uZDNkOTk2MyAxMDA2NDQK LS0tIGEvZ2NjL3RhcmdldC5kZWYKKysrIGIvZ2NjL3RhcmdldC5kZWYKQEAg LTQ0NjgsOCArNDQ2OCw4IEBAIGEgcmVnaXN0ZXIuIiwKICAgICAgICBib29s IG5hbWVkKSwKICBkZWZhdWx0X2Z1bmN0aW9uX2FyZykKIAotLyogTGlrZXdp c2UsIGJ1dCBmb3IgbWFjaGluZXMgd2l0aCByZWdpc3RlciB3aW5kb3dzLiAg UmV0dXJuIHRoZQotICAgbG9jYXRpb24gd2hlcmUgdGhlIGFyZ3VtZW50IHdp bGwgYXBwZWFyIHRvIHRoZSBjYWxsZWUuICAqLworLyogTGlrZXdpc2UsIGJ1 dCBmb3IgbWFjaGluZXMgd2l0aCByZWdpc3RlciB3aW5kb3dzIG9yIHNwZWNp YWwgYXJndW1lbnRzLgorICAgUmV0dXJuIHRoZSBsb2NhdGlvbiB3aGVyZSB0 aGUgYXJndW1lbnQgd2lsbCBhcHBlYXIgdG8gdGhlIGNhbGxlZS4gICovCiBE RUZIT09LCiAoZnVuY3Rpb25faW5jb21pbmdfYXJnLAogICJEZWZpbmUgdGhp cyBob29rIGlmIHRoZSB0YXJnZXQgbWFjaGluZSBoYXMgYGByZWdpc3RlciB3 aW5kb3dzJycsIHNvXG5cCkBAIC00NDgzLDYgKzQ0ODMsMTAgQEAgd2hpY2gg dGhlIGNhbGxlciBwYXNzZXMgdGhlIHZhbHVlLCBhbmRcblwKIGZhc2hpb24g dG8gdGVsbCB0aGUgZnVuY3Rpb24gYmVpbmcgY2FsbGVkIHdoZXJlIHRoZSBh cmd1bWVudHMgd2lsbFxuXAogYXJyaXZlLlxuXAogXG5cCitAY29kZXtUQVJH RVRfRlVOQ1RJT05fSU5DT01JTkdfQVJHfSBjYW4gYWxzbyByZXR1cm4gYXJi aXRyYXJ5IGFkZHJlc3NcblwKK2NvbXB1dGF0aW9uIHVzaW5nIGhhcmQgcmVn aXN0ZXIsIHdoaWNoIGNhbiBiZSBmb3JjZWQgaW50byBhIHJlZ2lzdGVyLFxu XAorc28gdGhhdCBpdCBjYW4gYmUgdXNlZCB0byBwYXNzIHNwZWNpYWwgYXJn dW1lbnRzLlxuXAorXG5cCiBJZiBAY29kZXtUQVJHRVRfRlVOQ1RJT05fSU5D T01JTkdfQVJHfSBpcyBub3QgZGVmaW5lZCxcblwKIEBjb2Rle1RBUkdFVF9G VU5DVElPTl9BUkd9IHNlcnZlcyBib3RoIHB1cnBvc2VzLiIsCiAgcnR4LCAo Y3VtdWxhdGl2ZV9hcmdzX3QgY2EsIG1hY2hpbmVfbW9kZSBtb2RlLCBjb25z dF90cmVlIHR5cGUsCg== --_002_4E89A029A0F8D443B436A5167BA3C53F03CFFF4ECDSMSX101ccrcor_--