entry.delivery_mode = INT_DELIVERY_MODE;
        entry.dest_mode = INT_DEST_MODE;
        entry.mask = 0;                         /* enable IRQ */
-       entry.dest.logical.logical_dest = cpu_mask_to_apicid(TARGET_CPUS);
+       entry.dest = cpu_mask_to_apicid(TARGET_CPUS);
 
        entry.trigger = irq_trigger(idx);
        entry.polarity = irq_polarity(idx);
        if (irq_trigger(idx)) {
                entry.trigger = 1;
                entry.mask = 1;
-               entry.dest.logical.logical_dest = cpu_mask_to_apicid(TARGET_CPUS);
+               entry.dest = cpu_mask_to_apicid(TARGET_CPUS);
        }
 
        if (!apic && !IO_APIC_IRQ(irq))
                if (vector < 0)
                        return;
 
-               entry.dest.logical.logical_dest = cpu_mask_to_apicid(mask);
+               entry.dest = cpu_mask_to_apicid(mask);
                entry.vector = vector;
 
                ioapic_register_intr(irq, vector, IOAPIC_AUTO);
         */
        entry.dest_mode = INT_DEST_MODE;
        entry.mask = 0;                                 /* unmask IRQ now */
-       entry.dest.logical.logical_dest = cpu_mask_to_apicid(TARGET_CPUS);
+       entry.dest = cpu_mask_to_apicid(TARGET_CPUS);
        entry.delivery_mode = INT_DELIVERY_MODE;
        entry.polarity = 0;
        entry.trigger = 0;
 
        printk(KERN_DEBUG ".... IRQ redirection table:\n");
 
-       printk(KERN_DEBUG " NR Log Phy Mask Trig IRR Pol"
-                         " Stat Dest Deli Vect:   \n");
+       printk(KERN_DEBUG " NR Dst Mask Trig IRR Pol"
+                         " Stat Dmod Deli Vect:   \n");
 
        for (i = 0; i <= reg_01.bits.entries; i++) {
                struct IO_APIC_route_entry entry;
 
                entry = ioapic_read_entry(apic, i);
 
-               printk(KERN_DEBUG " %02x %03X %02X  ",
+               printk(KERN_DEBUG " %02x %03X ",
                        i,
-                       entry.dest.logical.logical_dest,
-                       entry.dest.physical.physical_dest
+                       entry.dest
                );
 
                printk("%1d    %1d    %1d   %1d   %1d    %1d    %1d    %02X\n",
                entry.dest_mode       = 0; /* Physical */
                entry.delivery_mode   = dest_ExtINT; /* ExtInt */
                entry.vector          = 0;
-               entry.dest.physical.physical_dest =
-                                       GET_APIC_ID(apic_read(APIC_ID));
+               entry.dest          = GET_APIC_ID(apic_read(APIC_ID));
 
                /*
                 * Add it to the IO-APIC irq-routing table:
 
        entry1.dest_mode = 0;                   /* physical delivery */
        entry1.mask = 0;                        /* unmask IRQ now */
-       entry1.dest.physical.physical_dest = hard_smp_processor_id();
+       entry1.dest = hard_smp_processor_id();
        entry1.delivery_mode = dest_ExtINT;
        entry1.polarity = entry0.polarity;
        entry1.trigger = 0;
 
        entry.delivery_mode = INT_DELIVERY_MODE;
        entry.dest_mode = INT_DEST_MODE;
-       entry.dest.logical.logical_dest = cpu_mask_to_apicid(mask);
+       entry.dest = cpu_mask_to_apicid(mask);
        entry.trigger = triggering;
        entry.polarity = polarity;
        entry.mask = 1;                                  /* Disabled (masked) */