hi all, (1) while compiling from the CVS, i've encountered this problem:
config/msp430/libgcc.S: Assembler messages: config/msp430/libgcc.S:11: Error: junk `(r1)' after expression config/msp430/libgcc.S:11: Error: too many memory references for `sub' config/msp430/libgcc.S:12: Error: no such instruction: `subc 4(r1),r13' config/msp430/libgcc.S:13: Error: no such instruction: `subc 6(r1),r14' config/msp430/libgcc.S:14: Error: no such instruction: `subc 8(r1),r15' config/msp430/libgcc.S:16: Error: no such instruction: `tst r15' config/msp430/libgcc.S:16: Error: invalid character '<' in mnemonic config/msp430/libgcc.S:19: Error: suffix or operands invalid for `mov' config/msp430/libgcc.S:22: Error: no such instruction: `bis r12,r14' config/msp430/libgcc.S:22: Error: no such instruction: `check if zero' config/msp430/libgcc.S:23: Error: no such instruction: `bis r13,r15' config/msp430/libgcc.S:24: Error: no such instruction: `bis r14,r15' config/msp430/libgcc.S:25: Error: no such instruction: `tst r15' config/msp430/libgcc.S:26: Error: suffix or operands invalid for `je' config/msp430/libgcc.S:26: Error: junk `or or105ng all nibbles10' after expression config/msp430/libgcc.S:26: Error: suffix or operands invalid for `test' config/msp430/libgcc.S:27: Error: suffix or operands invalid for `mov' config/msp430/libgcc.S:30: Error: suffix or operands invalid for `mov' make[2]: *** [libgcc/./_cmpdi2.o] Error 1 i'm using the gcc-3.3 branch (of MSPGCC) and gcc-3.2.2 source, but gcc-3.2 source gives the same error. since i have actually compiled it successfully once, i am wondering if any CVS commit has produced the error. (2) which branch is actually the latest? the only thing i know for sure is that gcc-3.1 is not being maintained (3) i am also wondering why createlinks_gcc.py has hardcoded the branch to gcc-3.0. (4) the script createlinks_gcc.py actually does not work for me. i have looked at the source code, understood it and modified it to the essense of what the original createlinks_gcc.py is purported to achieve. (see below). logically the error should not be due to my modified version of createlinks_gcc.py. thank you, yw - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #!/usr/bin/env python # this script is for un*x/linux users. it creates hardlinks from this # directory to a target source tree. # this allows to check out the patch to a separate directory rather than # mixing the original gcc/binutils sources with this patch directly. # cliec...@gmx.net # $Id: createlinks_gcc.py,v 1.4 2002/01/20 03:24:47 cliechti Exp $ import sys,os, string, stat VERSION = string.split("$Revision: 1.4 $")[1] #extract CVS version #this is the name of the directory of the gcc sources #it starts with "./" versiondir = './gcc-3.3/' #first scan for files in the source directory #leave out CVS dirs files = [] dirs = [] def visitor(arg, dirname, names): #dirname = dirname[len(versiondir):] for name in names: if name and name[-3:] != 'CVS' and (dirname[-3:] != 'CVS'): path = os.path.join(dirname,name) if os.path.isdir(os.path.abspath(path)): path = path[len(versiondir):] print "Added dir ", path dirs.append(path) else: path = path[len(versiondir):] print "Added file ", path files.append(path) os.path.walk(versiondir, visitor, None) #option(s) for the ln command lnopts = '-s' #'-s' #to be used when symbolic links should be genereated, empty string for hardlinks if len(sys.argv) < 2: print """USAGE: %s targetdir version: %s This script replaces the files that are in the gcc source with links to files in this directory. Please specify the target directory, where the gcc sources are located, e.g. /home/user/src/gcc-3.2.2 Warning: the original files in the target directory tree are deleted!! The following files will be modifed in the target directory: """ % (sys.argv[0], VERSION) for f in files: print "\t\t%s" % os.path.join(versiondir, f) print """\n\tscroll up if you don't see the help message ;-)""" sys.exit(1) #make paths absolute so that the links are absolute too source = os.path.abspath(versiondir) target = os.path.abspath(sys.argv[1]); if not os.path.exists(target): print "The directory %s does not exist." % target sys.exit(1) print "Source dir: %s" % source print "Target dir: %s" % target if os.path.abspath(source) == os.path.abspath(target): print "No, no! Don't specify the source directory as target." sys.exit(1) for d in dirs: tgt = os.path.join(target, d) if not os.path.exists(tgt): print "Creating directory: ", tgt cmd = "mkdir %s " % (tgt) os.system(cmd) else: print "Directory %s already exists" % tgt for f in files: src = os.path.join(source, f) tgt = os.path.join(target, f) if os.path.exists(tgt): if os.path.samefile(src, tgt): print "%s already linked to %s" % (tgt, src) continue else: print "Removing file: ", tgt os.system("rm %s" % tgt) cmd = "ln %s %s %s" % (lnopts, src, tgt) print " ", cmd os.system(cmd) print "Done"