From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH v3] libx86: Work around GCC being unable to spill the PIC hard register Date: Mon, 19 Nov 2018 15:13:52 +0000 Message-ID: <1542640432-19324-1-git-send-email-andrew.cooper3@citrix.com> References: <1542633088-11101-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1542633088-11101-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Wei Liu , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org VmVyc2lvbnMgb2YgR0NDIGJlZm9yZSA1IGNhbid0IGNvbXBpbGUgY3B1aWQuYywgYW5kIGZhaWwg d2l0aCB0aGUgcmF0aGVyIGNyeXB0aWM6CgogIEluIGZpbGUgaW5jbHVkZWQgZnJvbSBsaWIveDg2 L2NwdWlkLmM6MzowOgogIGxpYi94ODYvY3B1aWQuYzogSW4gZnVuY3Rpb24g4oCYeDg2X2NwdWlk X3BvbGljeV9maWxsX25hdGl2ZeKAmToKICBpbmNsdWRlL3hlbi9saWIveDg2L2NwdWlkLmg6MjU6 NTogZXJyb3I6IGluY29uc2lzdGVudCBvcGVyYW5kIGNvbnN0cmFpbnRzIGluIGFuIOKAmGFzbeKA mQogICAgICAgYXNtICggImNwdWlkIgogICAgICAgXgoKU2VlIGh0dHBzOi8vZ2NjLmdudS5vcmcv YnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTU0MjMyIGZvciBtb3JlIGRldGFpbHMuCgpTaWduZWQt b2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0KQ0M6 IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4KQ0M6IFdlaSBMaXUgPHdlaS5saXUyQGNp dHJpeC5jb20+CkNDOiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KCnYy OgogKiBHQ0MgNSBpcyBmaW5lLiAgSXRzIGNwdWlkIGluc3RyaW5jdCBoYXMgbm9uZSBvZiB0aGUg UElDIHdvcmthcm91bmRzIHRoYW50IDQuOSBoYXZlLgogKiBGaXggNjRiaXQgYnVpbGRzIHdpdGgg bGFyZ2VyIG1vZGVscy4KdjM6CiAqIFJlZmVyZW5jZSB0aGUgYnVnemlsbGEgZW50cnkgd2hpY2gg Zml4ZWQgdGhpcy4KLS0tCiB4ZW4vaW5jbHVkZS94ZW4vbGliL3g4Ni9jcHVpZC5oIHwgMzggKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzNCBp bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hl bi9saWIveDg2L2NwdWlkLmggYi94ZW4vaW5jbHVkZS94ZW4vbGliL3g4Ni9jcHVpZC5oCmluZGV4 IDI2NmM5MTAuLjIyZDQzZWYgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9saWIveDg2L2Nw dWlkLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL2xpYi94ODYvY3B1aWQuaApAQCAtMjAsMjEgKzIw LDUxIEBAIHN0cnVjdCBjcHVpZF9sZWFmCiAgICAgdWludDMyX3QgYSwgYiwgYywgZDsKIH07CiAK Ky8qCisgKiBWZXJzaW9ucyBvZiBHQ0MgYmVmb3JlIDUgdW5jb25kaXRpb25hbGx5IHJlc2VydmUg JXJCWCBhcyB0aGUgUElDIGhhcmQKKyAqIHJlZ2lzdGVyLCBhbmQgYXJlIHVuYWJsZSB0byBjb3Bl IHdpdGggc3BpbGxpbmcgaXQuICBUaGlzIHJlc3VsdHMgaW4gYQorICogcmF0aGVyIGNyeXB0aWMg ZXJyb3I6CisgKiAgICBlcnJvcjogaW5jb25zaXN0ZW50IG9wZXJhbmQgY29uc3RyYWludHMgaW4g YW4g4oCYYXNt4oCZCisgKgorICogSW4gYWZmZWN0ZWQgc2l0dWF0aW9ucywgd29yayBhcm91bmQg dGhlIGlzc3VlIGJ5IHVzaW5nIGEgc2VwYXJhdGUgcmVnaXN0ZXIKKyAqIHRvIGhvbGQgdGhlIHRo ZSAlckJYIG91dHB1dCwgYW5kIHhjaGcgdHdpY2UgdG8gbGVhdmUgJXJCWCBwcmVzZXJ2ZWQgYXJv dW5kCisgKiB0aGUgYXNtKCkgc3RhdGVtZW50LgorICovCisjaWYgZGVmaW5lZChfX1BJQ19fKSAm JiBfX0dOVUNfXyA8IDUgJiYgIWRlZmluZWQoX19jbGFuZ19fKSAmJiBkZWZpbmVkKF9faTM4Nl9f KQorIyBkZWZpbmUgWENIR19CWCAieGNoZyAlJWVieCwgJVtieF07IgorIyBkZWZpbmUgQlhfQ09O IFtieF0gIj0mciIKKyNlbGlmIGRlZmluZWQoX19QSUNfXykgJiYgX19HTlVDX18gPCA1ICYmICFk ZWZpbmVkKF9fY2xhbmdfXykgJiYgXAorICAgIGRlZmluZWQoX194ODZfNjRfXykgJiYgKGRlZmlu ZWQoX19jb2RlX21vZGVsX21lZGl1bV9fKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZGVmaW5lZChfX2NvZGVfbW9kZWxfbGFyZ2VfXykpCisjIGRlZmluZSBYQ0hHX0JYICJ4Y2hn ICUlcmJ4LCAlcVtieF07IgorIyBkZWZpbmUgQlhfQ09OIFtieF0gIj0mciIKKyNlbHNlCisjIGRl ZmluZSBYQ0hHX0JYICIiCisjIGRlZmluZSBCWF9DT04gIj0mYiIKKyNlbmRpZgorCiBzdGF0aWMg aW5saW5lIHZvaWQgY3B1aWRfbGVhZih1aW50MzJfdCBsZWFmLCBzdHJ1Y3QgY3B1aWRfbGVhZiAq bCkKIHsKLSAgICBhc20gKCAiY3B1aWQiCi0gICAgICAgICAgOiAiPWEiIChsLT5hKSwgIj1iIiAo bC0+YiksICI9YyIgKGwtPmMpLCAiPWQiIChsLT5kKQorICAgIGFzbSAoIFhDSEdfQlgKKyAgICAg ICAgICAiY3B1aWQ7IgorICAgICAgICAgIFhDSEdfQlgKKyAgICAgICAgICA6ICI9YSIgKGwtPmEp LCBCWF9DT04gKGwtPmIpLCAiPSZjIiAobC0+YyksICI9JmQiIChsLT5kKQogICAgICAgICAgIDog ImEiIChsZWFmKSApOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgY3B1aWRfY291bnRfbGVhZigK ICAgICB1aW50MzJfdCBsZWFmLCB1aW50MzJfdCBzdWJsZWFmLCBzdHJ1Y3QgY3B1aWRfbGVhZiAq bCkKIHsKLSAgICBhc20gKCAiY3B1aWQiCi0gICAgICAgICAgOiAiPWEiIChsLT5hKSwgIj1iIiAo bC0+YiksICI9YyIgKGwtPmMpLCAiPWQiIChsLT5kKQorICAgIGFzbSAoIFhDSEdfQlgKKyAgICAg ICAgICAiY3B1aWQ7IgorICAgICAgICAgIFhDSEdfQlgKKyAgICAgICAgICA6ICI9YSIgKGwtPmEp LCBCWF9DT04gKGwtPmIpLCAiPWMiIChsLT5jKSwgIj0mZCIgKGwtPmQpCiAgICAgICAgICAgOiAi YSIgKGxlYWYpLCAiYyIgKHN1YmxlYWYpICk7CiB9CiAKKyN1bmRlZiBCWF9DT04KKyN1bmRlZiBY Q0hHCisKICNkZWZpbmUgQ1BVSURfR1VFU1RfTlJfQkFTSUMgICAgICAoMHhkdSArIDEpCiAjZGVm aW5lIENQVUlEX0dVRVNUX05SX0ZFQVQgICAgICAgKDB1ICsgMSkKICNkZWZpbmUgQ1BVSURfR1VF U1RfTlJfQ0FDSEUgICAgICAoNXUgKyAxKQotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h aWxtYW4vbGlzdGluZm8veGVuLWRldmVs