i386/169550: stable/9 @237770 buildworld breaks with clang

David Wolfskill david at catwhisker.org
Fri Jun 29 18:10:06 UTC 2012


>Number:         169550
>Category:       i386
>Synopsis:       stable/9 @237770 buildworld breaks with clang
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-i386
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jun 29 18:10:05 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     David Wolfskill
>Release:        FreeBSD 9.0-STABLE i386
>Organization:
Wolfskill & Dowling Residence
>Environment:
System: FreeBSD g1-227.catwhisker.org 9.0-STABLE FreeBSD 9.0-STABLE #200 237701M: Thu Jun 28 06:31:33 PDT 2012     root at g1-227.catwhisker.org:/usr/obj/usr/src/sys/CANARY  i386

>Description:
	Attempting an in-place source update to an i386 system running
	the above, after updating sources to r237770, "make buildworld"
	succeeds when using gcc as CC, but fails for CC=clang:

===> sys/boot/i386/cdboot (all)
clang -O2 -pipe  -I/usr/src/sys/boot/i386/cdboot/../common -ffreestanding -mpref
erred-stack-boundary=2  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -std=gnu99 -Qunused-arguments    -c /usr/src/sys/boot/i386/cdboot/cdboot.S
/usr/src/sys/boot/i386/cdboot/cdboot.S:112:10: error: .code16 not supported yet
  .code16
         ^
/usr/src/sys/boot/i386/cdboot/cdboot.S:144:3: error: ambiguous instructions requ
ire an explicit suffix (could be 'orb', 'orw', 'orl', or 'orq')
  or $0x1,0x8(%bx) # kargs->bootflags |=
  ^
/usr/src/sys/boot/i386/cdboot/cdboot.S:272:10: error: .code16 not supported yet
  .code16
         ^
/usr/src/sys/boot/i386/cdboot/cdboot.S:597:10: error: .code16 not supported yet
  .code16
         ^
*** [cdboot.o] Error code 1
1 error
*** [all] Error code 2
1 error
*** [all] Error code 2
1 error
*** [all] Error code 2
1 error
*** [sys.all__D] Error code 2


>How-To-Repeat:
	As described above.  Logs are available.  (I had first tried
	my usual "make -j4 -DNOCLEAN buildworld" and when that failed,
	I tried "make -j4 buildworld"; the failure was the same in
	each case.)

	For what it's worth, I have been tracking stable/9 daily since it
	branched; during BSDCan, I (also) started tracking stable/9
	with clang (vs. the gcc default).

	(I have & use 4 bootable slices on the laptop; each slice has
	its own / and /usr.  I also maintain a local private mirror
	of the FreeBSD SVN repo on it; the /usr/src working copies
	for each slice are thus updated separately, but since the mirror
	is only updated overnight, there's a fair degree of confidence
	that the only salient difference here is CC=clang vs. CC=gcc.)
	(The other 2 slices are for stable/8 and head.)
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-i386 mailing list