All of lore.kernel.org
 help / color / mirror / Atom feed
* undefined reference to `__gnu_thumb1_case_uqi'
@ 2011-04-16 11:29 Ulf Samuelsson
  2011-04-17 12:31 ` Andreas Oberritter
  2011-05-03 18:41 ` Khem Raj
  0 siblings, 2 replies; 3+ messages in thread
From: Ulf Samuelsson @ 2011-04-16 11:29 UTC (permalink / raw)
  To: openembedded-devel

The following code, (part of a bootloader - at91bootstrap-3.0)

"void sub(unsigned char Mode)
{
    switch (Mode) {
    ...
    /* 4 case statements */
"

generates an error when compiling in thumb mode, using the latest OE.

"undefined reference to `__gnu_thumb1_case_uqi'"

I think this subroutine will optimize a switch statment
with only a few choices.


Googling for this seems to indicate that __gnu_thumb1_case_uqi is part
of libgcc, but hidden.

Switches used: -DCONFIG_THUMB -mthumb -mthumb-interwork

Any clues on fixing this?
Meanwhile I will rewrite the bootloader using if statements

Best Regards
Ulf Samuelsson




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: undefined reference to `__gnu_thumb1_case_uqi'
  2011-04-16 11:29 undefined reference to `__gnu_thumb1_case_uqi' Ulf Samuelsson
@ 2011-04-17 12:31 ` Andreas Oberritter
  2011-05-03 18:41 ` Khem Raj
  1 sibling, 0 replies; 3+ messages in thread
From: Andreas Oberritter @ 2011-04-17 12:31 UTC (permalink / raw)
  To: openembedded-devel

On 04/16/2011 01:29 PM, Ulf Samuelsson wrote:
> The following code, (part of a bootloader - at91bootstrap-3.0)
> 
> "void sub(unsigned char Mode)
> {
>     switch (Mode) {
>     ...
>     /* 4 case statements */
> "
> 
> generates an error when compiling in thumb mode, using the latest OE.
> 
> "undefined reference to `__gnu_thumb1_case_uqi'"
> 
> I think this subroutine will optimize a switch statment
> with only a few choices.
> 
> 
> Googling for this seems to indicate that __gnu_thumb1_case_uqi is part
> of libgcc, but hidden.
> 
> Switches used: -DCONFIG_THUMB -mthumb -mthumb-interwork
> 
> Any clues on fixing this?
> Meanwhile I will rewrite the bootloader using if statements

Does adding -ffreestanding help?

Regards,
Andreas



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: undefined reference to `__gnu_thumb1_case_uqi'
  2011-04-16 11:29 undefined reference to `__gnu_thumb1_case_uqi' Ulf Samuelsson
  2011-04-17 12:31 ` Andreas Oberritter
@ 2011-05-03 18:41 ` Khem Raj
  1 sibling, 0 replies; 3+ messages in thread
From: Khem Raj @ 2011-05-03 18:41 UTC (permalink / raw)
  To: openembedded-devel

On (16/04/11 13:29), Ulf Samuelsson wrote:
> The following code, (part of a bootloader - at91bootstrap-3.0)
> 
> "void sub(unsigned char Mode)
> {
>     switch (Mode) {
>     ...
>     /* 4 case statements */
> "
> 
> generates an error when compiling in thumb mode, using the latest OE.
> 
> "undefined reference to `__gnu_thumb1_case_uqi'"
> 
> I think this subroutine will optimize a switch statment
> with only a few choices.
> 
> 
> Googling for this seems to indicate that __gnu_thumb1_case_uqi is part
> of libgcc, but hidden.
> 
> Switches used: -DCONFIG_THUMB -mthumb -mthumb-interwork
> 
> Any clues on fixing this?

what is your linker command ? Are you using gcc to do the linking or
calling out ld explicitly.

> Meanwhile I will rewrite the bootloader using if statements
> 
> Best Regards
> Ulf Samuelsson
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

-- 
-Khem



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-03 18:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-16 11:29 undefined reference to `__gnu_thumb1_case_uqi' Ulf Samuelsson
2011-04-17 12:31 ` Andreas Oberritter
2011-05-03 18:41 ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.