This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
String optimisations gone?
- From: "Dave Korn" <dk at artimi dot com>
- To: <gcc at gcc dot gnu dot org>
- Date: Wed, 24 Mar 2004 18:49:44 -0000
- Subject: String optimisations gone?
Afternoon all,
Could someone tell me if the compile-time string optimisations were
deliberately disabled between 3.2 and 3.3? I've been working with a custom
backend in 3.2, and just tried up-porting it to 3.3.3; now I see lots of
diffs like this in the testsuite runs:
@@ -10181,16 +10181,16 @@ PASS: gcc.c-torture/execute/string-opt-8
PASS: gcc.c-torture/execute/string-opt-8.c execution, -Os
FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -O0
UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -O0
-PASS: gcc.c-torture/execute/string-opt-9.c compilation, -O1
-PASS: gcc.c-torture/execute/string-opt-9.c execution, -O1
-PASS: gcc.c-torture/execute/string-opt-9.c compilation, -O2
-PASS: gcc.c-torture/execute/string-opt-9.c execution, -O2
-PASS: gcc.c-torture/execute/string-opt-9.c compilation, -O3
-fomit-frame-pointer
-PASS: gcc.c-torture/execute/string-opt-9.c execution, -O3
-fomit-frame-pointer
-PASS: gcc.c-torture/execute/string-opt-9.c compilation, -O3 -g
-PASS: gcc.c-torture/execute/string-opt-9.c execution, -O3 -g
-PASS: gcc.c-torture/execute/string-opt-9.c compilation, -Os
-PASS: gcc.c-torture/execute/string-opt-9.c execution, -Os
+FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -O1
+UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -O1
+FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -O2
+UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -O2
+FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -O3
-fomit-frame-pointer
+UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -O3
-fomit-frame-pointer
+FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -O3 -g
+UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -O3 -g
+FAIL: gcc.c-torture/execute/string-opt-9.c compilation, -Os
+UNRESOLVED: gcc.c-torture/execute/string-opt-9.c execution, -Os
Now, on my small embedded target we don't have any string functions (in
fact, we barely have a runtime lib at all), and all those FAILed
compilations were failing with 'cannot resolve _strlen' or similar at
linktime. But it worked ok for 3.2 at all levels above -O0, because the
functions were operating on constant strings and so were optimised away.
I've had a look through the list archives and I can't find anything obvious
(using search terms such as 'disable string optimisation'), so I'd just like
it if someone could confirm or deny to me that they've been deliberately
disabled; then I'll know whether my backend is doing something disasterously
wrong.
cheers,
DaveK
--
Can't think of a witty .sigline today....