X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Ftest%2Fqueens-handoptimized.c;h=0f71a4a98a2401139494a92494a615a271f94c48;hb=1872920c09708b361d06c0dc9f4c1fd0a03544f5;hp=fe7b4ed4f9b786b957d1efea00b46cafbcd7b943;hpb=863d31d7a5c8210432fef88b30fc3e8353131538;p=libfirm diff --git a/ir/be/test/queens-handoptimized.c b/ir/be/test/queens-handoptimized.c index fe7b4ed4f..0f71a4a98 100644 --- a/ir/be/test/queens-handoptimized.c +++ b/ir/be/test/queens-handoptimized.c @@ -26,7 +26,7 @@ typedef int boolean; //static int *row; // queen in column c is at row[c] -static inline int myabs(int i) { +static int myabs(int i) { if(0 > i) i = -i; return(i); @@ -38,6 +38,22 @@ static inline boolean place_ok (int i, const int *r, int ri) { int j = 0; boolean res; +#if 0 + if(0 >= i) + return true; + + do { + int rj = r[j]; + if ((rj == ri) || ((myabs(ri-rj)) == (i-j))) { + res = false; + return(res); + } + j = j+1; + } while(j < i); + + res = true; + return(res); +#else while (j < i) { int rj = r[j]; if ((rj == ri) || ((myabs(ri-rj)) == (i-j))) { @@ -49,6 +65,7 @@ static inline boolean place_ok (int i, const int *r, int ri) { res = true; return(res); +#endif } int solve (int n) {