IRC logs for #openrisc Friday, 2016-07-08

--- Log opened Fri Jul 08 00:00:29 2016
stekernolofk: I can repro with an even smaller testcase: http://pastie.org/1090167401:27
stekernand just or1k-elf-gcc -mhardfloat on that01:27
stekernif I include <math.h>, I don't get the ICE01:34
olofstekern: Thanks03:40
stekern...so, it seems like the ICE is dependent on something that is defined/not defined in some header file?03:41
stekernsince you see similar behaviour excluding/including include paths03:42
olofYeah, that makes sense03:42
olofTrying to look up the definition of isinf now03:43
olofThat was harder than I thought. newlib is complicated03:48
stekernmy guess is that the float gets treated as a double, which we don't have support for in hw03:48
stekernor something like that03:48
stekernhttp://pubs.opengroup.org/onlinepubs/009695399/basedefs/math.h.html03:48
stekernf FLT_EVAL_METHOD equals 0, float_t and double_t shall be float and double, respectively; if FLT_EVAL_METHOD equals 1, they shall both be double; if FLT_EVAL_METHOD equals 2, they shall both be long double; for other values of FLT_EVAL_METHOD, they are otherwise implementation-defined.03:48
* stekern makes wild guesses03:49
olofHmm... if so... how to fix?03:49
olofhaha. I think you'r right03:50
stekernno idea, but it's at least a grass straw to start grasping at ;)03:50
olofdouble f=0.0; gets rid of the error03:50
olofIs there a gcc switch to find out where it tries to locate isinf?03:52
olofhttps://github.com/openrisc/newlib/blob/or1k/newlib/libc/include/ieeefp.h#L24503:54
olofNot sure if it's related, but here isinf is undefined and it looks like it declares a double version just below03:55
olofhttps://github.com/openrisc/newlib/blob/or1k/newlib/libm/common/s_isnand.c#L7803:58
olofThis might explain why it works when we include math.h03:58
olofAlso, isinff fails.04:07
olofBut not isinfd04:07
stekernhmm, yes04:10
stekernand isinff fails when math.h is included as well04:11
olofI think isinf{f,d} are the functions from the expanded isinf macro04:11
olofI found something that looks like it could be the real isinff function, but I'm not really sure04:11
olofThere's a lot in this #ifdef for the SPU arch https://github.com/openrisc/newlib/blob/or1k/newlib/libc/include/machine/ieeefp.h#L9704:16
olofMaybe we could get away with some special treatment here too04:16
olofAlso, __isinff works, but not isinff04:19
olofbandvig: Check the backlog :)04:37
bandvigolofk: yes, I'm reading it now :)04:38
olofAlso, __builtin_insff fails04:46
olof__builtin_isinff04:47
bandvigolofk: it also works fine if replace "-isystem $NEWLIB_ROOT/newlib/libc/include" with "-I$NEWLIB_ROOT/newlib/libc/include"05:07
olofbandvig: Probably because it changes the order of the include headers05:10
bandvigolof: Oh, It was my mistake. With "-I$NEWLIB_ROOT/newlib/libc/include" it also fails, but with more trace messages (I also adde -v option in command line to see include pathes) http://pastie.org/1090178605:33
GeneralStupidcan anyone help me with modelsim please?11:42
GeneralStupidhow do i fix an empty work folder11:43
olofkGeneralStupid: vlib work ?18:00
olofkTime to sleep before heading to Boston. See some of you at the RISC-V conference18:03
olofkAnd give me a ping if someone happens to be near Boston next week. Got a lot of free time to kill18:03
GeneralStupidolofk: have a nice time in boston :D18:33
GeneralStupidolofk: thanks i already fixed it18:34
kc5tjaolofk: Will you be attending the 5th workshop?  If it'll be in the bay area, I should attend that too.  If so, we should meet up then.20:04
--- Log closed Sat Jul 09 00:00:30 2016

Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!