Hello
On my target gcc complains about undefined CONFIG_SSE2 macro and defaults it to 0, maybe attached patch should quiet gcc a bit?
in case of commiting, Signed-off by: Maciej Pijanka maciej.pijanka@gmail.com
On Mon, Mar 15, 2010 at 2:48 PM, Maciej Pijanka maciej.pijanka@gmail.comwrote:
Hello
On my target gcc complains about undefined CONFIG_SSE2 macro and defaults it to 0, maybe attached patch should quiet gcc a bit?
I think the preferred way to quiet this warning would be to define SSE2 correctly in src/cpu/VENDOR/CPU/Kconfig. The next best would be to set SSE2 to default to n in src/cpu/Kconfig.
Thanks, Myles
On Mon, 15 Mar 2010, Myles Watson wrote:
On Mon, Mar 15, 2010 at 2:48 PM, Maciej Pijanka maciej.pijanka@gmail.comwrote:
Hello
On my target gcc complains about undefined CONFIG_SSE2 macro and defaults it to 0, maybe attached patch should quiet gcc a bit?
I think the preferred way to quiet this warning would be to define SSE2 correctly in src/cpu/VENDOR/CPU/Kconfig. The next best would be to set SSE2 to default to n in src/cpu/Kconfig.
I have such warning for P2, i checked and no my p2 cpus have SSE2, but i am not going to patch src/cpu/ just because i don't understand what impact it might have.
I understand that this patch should not be needed, but then, maybe add before #define in patch to #warning "cpu don't define CONFIG_SSE2, fix it if you can" or something similar?
Maciej
On 03/15/2010 06:10 PM, Maciej Pijanka wrote:
On Mon, 15 Mar 2010, Myles Watson wrote:
On Mon, Mar 15, 2010 at 2:48 PM, Maciej Pijankamaciej.pijanka@gmail.comwrote:
Hello
On my target gcc complains about undefined CONFIG_SSE2 macro and defaults it to 0, maybe attached patch should quiet gcc a bit?
I think the preferred way to quiet this warning would be to define SSE2 correctly in src/cpu/VENDOR/CPU/Kconfig. The next best would be to set SSE2 to default to n in src/cpu/Kconfig.
I have such warning for P2, i checked and no my p2 cpus have SSE2, but i am not going to patch src/cpu/ just because i don't understand what impact it might have.
I understand that this patch should not be needed, but then, maybe add before #define in patch to #warning "cpu don't define CONFIG_SSE2, fix it if you can" or something similar?
Yes I agree p2's do not support SSE2, so one would think you would not even get this warning.....
On my target gcc complains about undefined CONFIG_SSE2 macro and
defaults
it to 0, maybe attached patch should quiet gcc a bit?
I think the preferred way to quiet this warning would be to define SSE2 correctly in src/cpu/VENDOR/CPU/Kconfig. The next best would be to set
SSE2
to default to n in src/cpu/Kconfig.
I have such warning for P2, i checked and no my p2 cpus have SSE2, but i
am not going to patch
src/cpu/ just because i don't understand what impact it might have.
Then silencing the warning is probably not a good idea :) You can grep for CONFIG_SSE2 to see where the variable is checked. The idea is that you can speed up execution if you have SSE2 instructions available, but we don't want to break things for those that don't have them. The warning is there to suggest that you put in the correct value.
I understand that this patch should not be needed, but then, maybe add
before #define in patch
to #warning "cpu don't define CONFIG_SSE2, fix it if you can" or
something similar?
Yes I agree p2's do not support SSE2, so one would think you would not even get this warning.....
You get the warning because no one has told Coreboot that p2s don't have SSE2. That should be done in the Kconfig file for the processor.
Thanks, Myles
The idea is that you can speed up execution if you have SSE2 instructions available, but we don't want to break things for those that don't have them. The warning is there to suggest that you put in the correct value
I would welcome a patch where someone ran
./util/abuild/abuild -C -a grep -L "SSE " coreboot-builds/*/config.h grep -L "SSE2 " coreboot-builds/*/config.h
Then added the correct values to the src/cpu/*/*/Kconfig files.
It would take some time with wikipedia.
On the other hand, since you know your CPU doesn't support SSE2, you could just mention your CPU by name, and I'll add the correct value for SSE2 to the correct file.
Thanks, Myles
On Mon, 15 Mar 2010, Myles Watson wrote:
On my target gcc complains about undefined CONFIG_SSE2 macro and
defaults
it to 0, maybe attached patch should quiet gcc a bit?
I think the preferred way to quiet this warning would be to define SSE2 correctly in src/cpu/VENDOR/CPU/Kconfig. The next best would be to set
SSE2
to default to n in src/cpu/Kconfig.
I have such warning for P2, i checked and no my p2 cpus have SSE2, but i
am not going to patch
src/cpu/ just because i don't understand what impact it might have.
Then silencing the warning is probably not a good idea :) You can grep for CONFIG_SSE2 to see where the variable is checked. The idea is that you can speed up execution if you have SSE2 instructions available, but we don't want to break things for those that don't have them. The warning is there to suggest that you put in the correct value.
but gcc defaults to same value as this patch would do, so only advantage or disadvantage might be in better more descriptive comment or not. Currently plain warning about undefined macro don't attract too much attention.
I understand that this patch should not be needed, but then, maybe add
before #define in patch
to #warning "cpu don't define CONFIG_SSE2, fix it if you can" or
something similar?
Yes I agree p2's do not support SSE2, so one would think you would not even get this warning.....
You get the warning because no one has told Coreboot that p2s don't have SSE2. That should be done in the Kconfig file for the processor.
But it should be safe to set default config SSE2 to n, so in worst case person will get degraded performance, or better is add patch which issues correct warning message not just info about missing macro, and defines to sensible default after issuing warnining (so to 0 as gcc do otherwise anyway)
Thanks, Myles