Skip to content

Instantly share code, notes, and snippets.

View brycelelbach's full-sized avatar

Bryce Adelstein Lelbach brycelelbach

View GitHub Profile
In file included from arch/x86/kernel/syscall_64.c:28:
/home/wash/development/linux-2.6-wc/arch/x86/include/asm/unistd_64.h:460:1: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
__SYSCALL(__NR_removexattr, sys_removexattr)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wash/development/linux-2.6-wc/arch/x86/include/asm/unistd_64.h:460:29: note: instantiated from:
__SYSCALL(__NR_removexattr, sys_removexattr)
^~~~~~~~~~~~~~~
arch/x86/kernel/syscall_64.c:27:29: note: previous initialization is here
[0 ... __NR_syscall_max] = &sys_ni_syscall,
^~~~~~~~~~~~~~~
[ 28%] Generating pscrt-static-x86_64/malloc_opt_c.o
### Assertion failure at line 356 of /home/wash/development/path64-wc/src/be/cg/register.cxx:
### Compiler Error in file /home/wash/development/path64-wc/src/libpscrt/malloc_opt.c during Codegen Initialization phase:
### invalide register class 8
pathcc INTERNAL ERROR: /home/wash/development/path64-wc/build/lib/4.0.0/x8664/be returned non-zero status 1
Please report this problem to http://support.pathscale.com.
Problem report saved as /home/wash/.ekopath-bugs/pathcc_error_MqLIcJ.i
Please review the above file and, if possible, attach it to your problem report.
make[2]: *** [src/libpscrt/pscrt-static-x86_64/malloc_opt_c.o] Error 1
[ 28%] Generating pscrt-static-x86_64/malloc_opt_c.o
### Assertion failure at line 356 of /home/wash/development/path64-wc/src/be/cg/register.cxx:
### Compiler Error in file /home/wash/development/path64-wc/src/libpscrt/malloc_opt.c during Codegen Initialization phase:
### invalide register class 8
pathcc INTERNAL ERROR: /home/wash/development/path64-wc/build/lib/4.0.0/x8664/be returned non-zero status 1
Please report this problem to http://support.pathscale.com.
Problem report saved as /home/wash/.ekopath-bugs/pathcc_error_MqLIcJ.i
Please review the above file and, if possible, attach it to your problem report.
make[2]: *** [src/libpscrt/pscrt-static-x86_64/malloc_opt_c.o] Error 1
PathScale(TM) compiler problem report - Mon Oct 25 18:36:02 2010
Please report this problem to http://support.pathscale.com .
If possible, please attach a copy of this file with your report.
PLEASE NOTE: This file contains a preprocessed copy of the source file
that may have led to this problem occurring.
Compiler command line (64-bit ABI used):
/home/wash/development/path64-wc/build/bin/pathcc -c -m64 -DTARG_X8664 -I/home/wash/development/path64-wc/build/src/include -I/home/wash/development/path64-wc/src/include -I/home/wash/development/path64-wc/build/src/../lib/include -fpic -DHAVE_ALLOCA_H=1 -DX86_WHIRL_OBJECTS -D_SGI_SOURCE -D__GNU_BUG_WORKAROUND -DKEY -DFE_GNU_4_2_0 -D_LONGLONG -D_MIPSEL -DTARG_LINUX -D_MIPS_SZINT=32 -D_MIPS_SZPTR=32 -D_MIPS_SZLONG=32 -DHOST_IS_BIG_ENDIAN=0 -DHOST_IS_LITTLE_ENDIAN=1 -D_LANGUAGE_C -O2 -DNDEBUG
wash@Pegasus:~$ /opt/path64/bin/pathcc -print-file-name=include
/include
wash@Pegasus:~$ /usr/local/bin/clang -print-file-name=include
/usr/local/bin/../lib/clang/2.9/include
wash@Pegasus:~$ /usr/bin/gcc -print-file-name=include
/usr/lib/gcc/x86_64-linux-gnu/4.5.1/include
wash@Pegasus:~$ /usr/lib/intel/bin/intel64/icc -print-file-name=include
/usr/lib/gcc/x86_64-linux-gnu/4.5.1/include
make[1]: Entering directory `/home/wash/development/llvm-wc/tools/clang/test'
Making Clang 'lit.site.cfg' file...
--- Running clang tests for x86_64-unknown-linux-gnu ---
lit.py: lit.cfg:130: note: using clang: '/home/wash/development/llvm-wc/Release+Asserts/bin/clang'
FAIL: Clang :: Sema/recover-goto.c (1860 of 2630)
******************** TEST 'Clang :: Sema/recover-goto.c' FAILED ********************
Script:
--
/home/wash/development/llvm-wc/Release+Asserts/bin/clang -cc1 -fsyntax-only /home/wash/development/llvm-wc/tools/clang/test/Sema/recover-goto.c -verify
--
wash@Pegasus:~/sandbox/compiler_tests$ clang -cc1 -S -mregparm=3 mregparm.c -o mregparm_3a.ll
wash@Pegasus:~/sandbox/compiler_tests$ clang -S -mregparm=3 mregparm.c -o mregparm_3b.ll
clang: warning: argument unused during compilation: '-mregparm=3'
wash@Pegasus:~/sandbox/compiler_tests$ clang -mregparm=3 mregparm.c -o mregparm_3
Oct 28 17:42:19 Pegasus kernel: [ 5.353797] udev: starting version 161
Oct 28 17:42:19 Pegasus kernel: [ 5.595446] apple 0003:05AC:0236.0005: hidraw4: USB HID v1.11 Device [Apple, Inc. Apple Internal Keyboard / Trackpad] on usb-0000:00:04.0-6/input1
Oct 28 17:42:19 Pegasus kernel: [ 5.598407] input: bcm5974 as /devices/pci0000:00/0000:00:04.0/usb3/3-6/3-6:1.2/input/input4
Oct 28 17:42:19 Pegasus kernel: [ 5.673311] usb 4-1.1: new full speed USB device using ohci_hcd and address 4
Oct 28 17:42:19 Pegasus kernel: [ 5.759992] BUG: unable to handle kernel paging request at ffff8800bcccdb48
Oct 28 17:42:19 Pegasus kernel: [ 5.760006] IP: [<ffffffff811d8130>] __bitmap_weight+0x7c/0x8f
Oct 28 17:42:19 Pegasus kernel: [ 5.760789] PGD 1a08063 PUD 0
Oct 28 17:42:19 Pegasus kernel: [ 5.761615] Oops: 0000 [#1] SMP
Oct 28 17:42:19 Pegasus kernel: [ 5.763110] last sysfs file: /sys/devices/pnp0/00:07/rtc/rtc0/uevent
Oct 28 17:42:19 Pegasus kernel: [ 5.763110] CPU 0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.36-clang-np-dev-00003-ga6a87d1 (wash@Pegasus) (Thread model: posix) #2 SMP Fri Oct 29 15:24:25 EDT 2010
[ 0.000000] Command line: console=ttyS0,115200n8 console=tty0
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: 0000000000000000 - 000000000009f400 (usable)
[ 0.000000] BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved)
[ 0.000000] BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
[ 0.000000] BIOS-e820: 0000000000100000 - 0000000007ffd000 (usable)
[ 0.000000] BIOS-e820: 0000000007ffd000 - 0000000008000000 (reserved)
21:23 < wash> One of the largest problems we've been having with Clang-compiled Linux is functions that are not emitted in the Linux binary, because they are only called from
inline assembly, and the Linux kernel devs neglected to mark all of these appriopitately with the __used attribute. Apparently, GCC has magic that allows it to
detect function usage in inline asm. So: 0.) Does path have the ability to detect function calls in inline asm? 1.) If not, does path support __used (attribute
attached to functions, prevents them from being omitted)? 2.) Does path support -femit-all-decls (we are working with on a static analysis using clang to detect all
the unused functions in Linux, so that we can go over them all and fix all of these problems, but until then, we're using -femit-all-decls for clang linux. A bit
unelegant, admittedly)?