~bkerensa/ubuntu/raring/valgrind/merge-from-deb

« back to all changes in this revision

Viewing changes to coregrind/launcher-linux.c

  • Committer: Benjamin Kerensa
  • Date: 2012-11-21 23:57:58 UTC
  • mfrom: (1.1.16)
  • Revision ID: bkerensa@ubuntu.com-20121121235758-bd1rv5uc5vzov2p6
Merge from debian unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
7
7
   This file is part of Valgrind, a dynamic binary instrumentation
8
8
   framework.
9
9
 
10
 
   Copyright (C) 2000-2011 Julian Seward 
 
10
   Copyright (C) 2000-2012 Julian Seward 
11
11
      jseward@acm.org
12
12
 
13
13
   This program is free software; you can redistribute it and/or
179
179
                 ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
180
180
               platform = "arm-linux";
181
181
            }
 
182
            else
 
183
            if (ehdr->e_machine == EM_MIPS &&
 
184
                (ehdr->e_ident[EI_OSABI] == ELFOSABI_SYSV ||
 
185
                 ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
 
186
               platform = "mips32-linux";
 
187
            }
182
188
         }
183
189
         else if (header[EI_DATA] == ELFDATA2MSB) {
184
190
            if (ehdr->e_machine == EM_PPC &&
186
192
                 ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
187
193
               platform = "ppc32-linux";
188
194
            }
 
195
            else 
 
196
            if (ehdr->e_machine == EM_MIPS &&
 
197
                (ehdr->e_ident[EI_OSABI] == ELFOSABI_SYSV ||
 
198
                 ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
 
199
               platform = "mips32-linux";
 
200
            }
189
201
         }
190
202
 
191
203
      } else if (n_bytes >= sizeof(Elf64_Ehdr) && header[EI_CLASS] == ELFCLASS64) {
198
210
               platform = "amd64-linux";
199
211
            }
200
212
         } else if (header[EI_DATA] == ELFDATA2MSB) {
201
 
#           if !defined(VGPV_arm_linux_android)
 
213
#           if !defined(VGPV_arm_linux_android) && !defined(VGPV_x86_linux_android)
202
214
            if (ehdr->e_machine == EM_PPC64 &&
203
215
                (ehdr->e_ident[EI_OSABI] == ELFOSABI_SYSV ||
204
216
                 ehdr->e_ident[EI_OSABI] == ELFOSABI_LINUX)) {
284
296
       (0==strcmp(VG_PLATFORM,"ppc32-linux")) ||
285
297
       (0==strcmp(VG_PLATFORM,"ppc64-linux")) ||
286
298
       (0==strcmp(VG_PLATFORM,"arm-linux"))   ||
287
 
       (0==strcmp(VG_PLATFORM,"s390x-linux")))
 
299
       (0==strcmp(VG_PLATFORM,"s390x-linux")) ||
 
300
       (0==strcmp(VG_PLATFORM,"mips32-linux")))
288
301
      default_platform = VG_PLATFORM;
289
302
   else
290
303
      barf("Unknown VG_PLATFORM '%s'", VG_PLATFORM);