From f89b331b100ac1dc3fde91bc4634a6c5d74f48a0 Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Fri, 30 May 2014 10:20:19 +0800 Subject: libgcrypt: workaround ICE failure on mips with '-O -g' Hit a ICE and could reduce it to the following minimal example: 1. Only the size of array assigned with 2 caused the issue: $ cat > mipgcc-test.c << END int main (int argc, char **argv) { char *pStrArry[ARRAY_SIZE_MAX] = {"hello"}; int i = 0; while(pStrArry[i] && i for instructions [YOCTO #6034] 3. The quick workround is trying to enlarge the size of array with larger than 2. 4. File a bug to GNU, but it could not be reproduced on there environment. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60643 (From OE-Core rev: 4af0c70c70809c8f03d7ba14745d79e3c6e35b2e) Signed-off-by: Hongxu Jia Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- ...x-ICE-failure-on-mips-with-option-O-and-g.patch | 71 ++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 meta/recipes-support/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch (limited to 'meta/recipes-support/libgcrypt/files') diff --git a/meta/recipes-support/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch b/meta/recipes-support/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch new file mode 100644 index 0000000000..56c591f06e --- /dev/null +++ b/meta/recipes-support/libgcrypt/files/fix-ICE-failure-on-mips-with-option-O-and-g.patch @@ -0,0 +1,71 @@ +tests/bench-slope.c: workaround ICE failure on mips with '-O -g' + +Hit a ICE and could reduce it to the following minimal example: + +1. Only the size of array assigned with 2 caused the issue: +$ cat > mipgcc-test.c << END + +int main (int argc, char **argv) +{ + char *pStrArry[ARRAY_SIZE_MAX] = {"hello"}; + int i = 0; + + while(pStrArry[i] && i for instructions + +3. The quick workround is trying to enlarge the size of array with larger +than 2. + +4. File a bug to GNU, but it could not be reproduced on there environment. +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60643 + +Upstream-Status: [oe specific] + +Signed-off-by: Hongxu Jia +--- + tests/bench-slope.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/bench-slope.c b/tests/bench-slope.c +index bd05064..28c2438 100644 +--- a/tests/bench-slope.c ++++ b/tests/bench-slope.c +@@ -1197,7 +1197,7 @@ static struct bench_ops hash_ops = { + }; + + +-static struct bench_hash_mode hash_modes[] = { ++static struct bench_hash_mode hash_modes[3] = { + {"", &hash_ops}, + {0}, + }; +@@ -1349,7 +1349,7 @@ static struct bench_ops mac_ops = { + }; + + +-static struct bench_mac_mode mac_modes[] = { ++static struct bench_mac_mode mac_modes[3] = { + {"", &mac_ops}, + {0}, + }; +-- +1.8.1.2 + -- cgit v1.2.3-54-g00ecf