This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/27531] [4.2 regression] sparc: undefined reference to .LL226 with -O2



------- Comment #10 from pinskia at gcc dot gnu dot org  2006-05-13 22:06 -------
Here is the reduced testcase as I could get it (LL20 is not recorded here as
being used):
typedef struct _IO_FILE FILE;
extern char const *RCSname;
extern struct rcslock *Locks;
extern struct hshentry * Head;
struct Revpairs{
    struct Revpairs * rnext;
};
static void getrevpairs (char*);
static int branchflag;
static struct Revpairs *revlist, *Revlst;
char *t;
int main (int argc, char **argv)
{
    FILE *out;
    char *a, **newargv;
    struct Datepairs *currdate;
    int descflag, selectflag;
    int onlylockflag;
    int onlyRCSflag;
    int shownames;
    descflag = selectflag = shownames = 1;
    onlylockflag = onlyRCSflag = 0;
    while (a = *++argv, 0<--argc)
    {
        switch (*a++)
        {
            case 'L':
                onlylockflag = 1;
            case 'N':
                shownames = 0;
            case 'R':
                t = a;
            case 'b':
                branchflag = 1;
            case 'r':
                getrevpairs(a);
        }
        if (onlylockflag && !Locks)
            aprintf(out, "%s\n", RCSname);
        if (shownames) 
            while( currdate)
                recentdate(Head, currdate);
    }
}
void getrevpairs(char *argv)
{
    char c;
    struct Revpairs * nextrevpair;
    int separator;
    if (strchr(argv,':'))
        separator = ':';
    else
    {
        if (strchr(argv,'-') )
            warn("`-' is obsolete in `-r%s'; use `:' instead", argv);
        separator = '-';
    }
    for (;;)
    {
        nextrevpair->rnext = revlist;
        for (;; c = *++argv)
        {
            switch (c)
            {
                default:
                    continue;
                case ' ':
                case '\t':
                case '\n':
                    break;
                case ':':
                case '-':
                    if (c == separator)
                        continue;
            }
            break;
        }
        if (!c)
            break;
        error("missing `,' near `%c%s'", c, argv+1);
    }
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27531


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]